Eclipse中如何在正则表达式查找和替换中改变大小写

4
在Eclipse中,我想要进行正则表达式的搜索和替换,并且稍微修改一下,改变其中一个字母的大小写。例如:查找myVariable.getProperty()并将其更改为myVariable.property
我可以很容易地使用myVariable.get(\w+)\(\)并将其替换为myVariable.$1,但结果会得到带有大写字母“P”的myVariable.Property
我相信这在一些正则表达式引擎中是可能的,但我找不到在Eclipse中实现它的方法。

1
https://dev59.com/knE95IYBdhLWcg3wkeyq - hwnd
你想要进行重构。选择你的表达式,右键点击,“重构 -> 重命名”,完成!它会更新表达式以及所有使用到它的地方。 - njzk2
抱歉,我应该明确说明这是在JSP中的EL上,所以我不想实际重命名方法,而是想改变它的调用方式。 - Colin
1个回答

2
我不认为Eclipse支持那种功能。你需要“有创意”,像这样做:
搜索:myVariable\.getP(\w+)\(\)
替换:myVariable\.p(\1)
但是根据regular-expressions.info(http://www.regular-expressions.info/replacecase.html),如果您可以使用其他类型的正则表达式编辑器来编辑JSP文件,就可以进行更改。
例如,使用EditPad Lite,您可以进行以下搜索:
搜索:(myVariable\.)get(\w+)\(\)
并将其替换为:
替换:\1\L2
这将导致:

myVariable.getProperty()

to:

myVariable.property

在这种情况下,\L2将第二个反向引用的内容更改为小写版本。\U2会将其更改为大写字母。\I0会将字符串中每个分隔单词的首字母大写,\F0仅会将您的字符串的第一个字母大写。
我已经做过类似的事情,对于一些小但重复的更改,eclipse并不完全适合这项工作。当更改完成后,我会回到eclipse。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接