我在Eclipse IDE中使用正则表达式。我想转向
other.test
加入other.getTest()
搜索:other.([a-z])([a-z]*)
替换:other.\U$1$2()
结果:other.Utest()
我认为在小组面前添加一个\ U应该改变案例,但它不适合我。任何想法?
答案 0 :(得分:2)
不幸的是,Eclipse Find / Replace正则表达式不支持大致修改运算符,如\U
,\u
,\L
和\l
。您可以使用jrahhali建议的长解决方法,也可以使用Notepad ++:
搜索:other\.([a-z]+)
替换:other.get\u$1\(\)
<强> Explantion 强>:
other\.
- 匹配字符串other.
(请注意,必须转义点以匹配文字点)([a-z]+)
- 第1组捕获1个或多个小写ASCII字母(选中匹配大小写选项仅匹配小写ASCII字母与[a-z]+
)替换模式详情:
other.get
- 文字other.get
\u$1
- 第1组的内容($1
是对已捕获组1的反向引用),其第一个字符使用\u
运算符({{1将捕获组的整个文本转换为大写)\U
- 文字\(\)
(括号应在NPP Boost条件替换模式中转义)。演示屏:
答案 1 :(得分:0)
这很有效。您需要两次搜索和替换通行证。参考答案:Is it possible to transform to lowercase using Eclipse's regex search and replace?
search 1: other\.([a-z])([a-z]*)
replace 1: other.ABCDEFGHIJKLMNOPQRSTUVWXYZ$1$2
search 2: other\.(A)BCDEFGHIJKLMNOPQRSTUVWXYZa|A(B)CDEFGHIJKLMNOPQRSTUVWXYZb|AB(C)DEFGHIJKLMNOPQRSTUVWXYZc|ABC(D)EFGHIJKLMNOPQRSTUVWXYZd|ABCD(E)FGHIJKLMNOPQRSTUVWXYZe|ABCDE(F)GHIJKLMNOPQRSTUVWXYZf|ABCDEF(G)HIJKLMNOPQRSTUVWXYZg|ABCDEFG(H)IJKLMNOPQRSTUVWXYZh|ABCDEFGH(I)JKLMNOPQRSTUVWXYZi|ABCDEFGHI(J)KLMNOPQRSTUVWXYZj|ABCDEFGHIJ(K)LMNOPQRSTUVWXYZk|ABCDEFGHIJK(L)MNOPQRSTUVWXYZl|ABCDEFGHIJKL(M)NOPQRSTUVWXYZm|ABCDEFGHIJKLM(N)OPQRSTUVWXYZn|ABCDEFGHIJKLMN(O)PQRSTUVWXYZo|ABCDEFGHIJKLMNO(P)QRSTUVWXYZp|ABCDEFGHIJKLMNOP(Q)RSTUVWXYZq|ABCDEFGHIJKLMNOPQ(R)STUVWXYZr|ABCDEFGHIJKLMNOPQR(S)TUVWXYZs|ABCDEFGHIJKLMNOPQRS(T)UVWXYZt|ABCDEFGHIJKLMNOPQRST(U)VWXYZu|ABCDEFGHIJKLMNOPQRSTU(V)WXYZv|ABCDEFGHIJKLMNOPQRSTUV(W)XYZw|ABCDEFGHIJKLMNOPQRSTUVW(X)YZx|ABCDEFGHIJKLMNOPQRSTUVWX(Y)Zy|ABCDEFGHIJKLMNOPQRSTUVWXY(Z)z([a-z]*)
replace 2: other.get$1$2$3$4$5$6$7$8$9$10$11$12$13$14$15$16$17$18$19$20$21$22$23$24$25$26$27
答案 2 :(得分:-1)
简单的......根据http://www.regexe.com/,它可以正常工作:
search pattern - other\.t(est)
replace pattern - other\.getTest\(\)
祝你好运..