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

user196692 picture user196692 · Feb 12, 2010 · Viewed 25.7k times · Source

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?

Answer

edio picture edio · Jul 24, 2012

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.