IDEA如何使用正则表达式批量替换字符串

本篇文章为大家讲解一下IDEA如何使用正则表达式批量替换字符串,有需要的小伙伴可以参考一下。

img

由于一开始的粗放扩张,公司项目代码里,遗留有很多类似魔法数的写死的id,导致现在维护困难。于是交给我任务,将这些id替换成静态变量。

这些id有十多种,分布在十个文件中,总共六十多处,要手动去查找替换几乎是不可能的。

Idea中,菜单栏Edit->find->replace in path可以打开全文件查找功能,可以对项目的所有文件中的内容进行查找替换。

现在我们有这样的代码,其中的abcd是写死的id:

String id="abcd".equals(str);

要替换成:

String id=ConstantService.getBy("abcd").equals(str);

如果只用普通的匹配,我会想到查找”String id=””,替换成”String id=ConstantService.getBy(“”。

然而在项目中”String id=””这样格式的代码是非常多的,普通的匹配很可能误伤到其他代码。

因此我使用正则匹配。点击右边的”.*”图标打开正则匹配模式。

简单介绍Idea使用正则表达式批量替换字符串的方法简单介绍Idea使用正则表达式批量替换字符串的方法

需要替换的代码符合这样的匹配模式:

String id=\"(\w+)\".equals\(str\);

可以替换成:

String id=ConstantService.getBy("$1").equals(str);

匹配模式中,写死的id可以用”(\w+)”表示。最外侧是转义的引号。括号代表一个匹配组,其中的\w匹配字符,+号表示字符出现1或多次。这样的模式符合项目中写死id。

替换串中$1代表匹配串中的第一个匹配组。因此,我们不用一次次的指定每个id,替换串自动将匹配的id替换到结果中。

这样,这项本来令人难以想象的复杂工作就轻松解决了。到此这篇关于Idea使用正则表达式批量替换字符串的文章就介绍到这了。

网站栏目:IDEA如何使用正则表达式批量替换字符串
路径分享:http://www.mswzjz.cn/qtweb/news44/453244.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能