How to replace uppercase letters to lowercase letters using regex in Eclipse?

旧巷老猫 提交于 2019-12-31 17:54:14

问题


I'd like to go through all of my source code files and replace every occurence of k_Xyyy with k_xyyy (switch the first letter after k_ from uppercase to lowercase).

I'm using the eclipse dialog to search and replace multiple files. Right now I have the regex \bk_([A-Z]).

How do I specify the replacement string of the regex?


回答1:


That is not possible. Either use Eclipse's re-factoring functionality, or replace them one at a time:

regex       : \bk_A
replacement : k_a 

regex       : \bk_B
replacement : k_b 

...

regex       : \bk_Z
replacement : k_z 



回答2:


I just resolved the same task (had to turn .net interface into java interface) utilizing the power of VIM :)

void DoMethod1 -> void doMethod1
Foo PerformMethod2 -> Foo performMethod2
:%s/\(^\s*\w\+\s\+\)\([A-Z]\)/\1\L\2/g

Here we are searching for (optional indentation followed by return type followed by whitespace) followed by (Uppercase letter). Braces are capturing groups. Then we are performing a replacement first capturing group \1 lowercase \L second capturing group \2.

This of course requires you to open file in Vim, but anyway this is much faster then doing the same thing by hand in Eclipse.




回答3:


I needed to do this for a huge chunk of source code where string literals needed to be converted to lowercase. I found a way using Notepad++ and the Python Script plugin, as used here.




回答4:


(for me, since I just started programming, this was more fun to think about) Take $pattern_to_change and convert it from ascii to decimal using ord().Take the resulting dec number and add 32. Then convert $desired_pattern back to ascii using chr().

Or just download SublimeText and use its Find and Replace feature to Find All occurrences and replace them with difference text (Sublime has regex as well).

I'm sure you could have converted one billion by hand since this post is like 5 years old, but you could have complete this in 5 minutes with Sublime.

Really useful text editor.



来源:https://stackoverflow.com/questions/2251925/how-to-replace-uppercase-letters-to-lowercase-letters-using-regex-in-eclipse

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!