主页 > 知识库 > Idea使用正则表达式批量替换字符串的方法

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

热门标签:怎么在高德地图标注行走轨迹 施工地图标注怎么做 深圳400电话办理那家好 清远阳山400电话号码如何申请 安徽移动外呼系统 百度地图标注名编辑 百度地图标注饭店位置怎么 襄阳房产电销机器人招商 个性化地图标注在线

由于一开始的粗放扩张,公司项目代码里,遗留有很多类似魔法数的写死的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=\""这样格式的代码是非常多的,普通的匹配很可能误伤到其他代码。

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

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

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

可以替换成:

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

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

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

这样,这项本来令人难以想象的复杂工作就轻松解决了。

到此这篇关于Idea使用正则表达式批量替换字符串的文章就介绍到这了,更多相关idea正则表达式批量替换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • idea 正则表达式搜索替换应用详解
  • Intellij IDEA全局替换快捷键整理
  • IDEA全量替换一次性解决旧项目并将所有文件换行符改为LF问题
  • IntelliJ IDEA搜索整个项目进行全局替换(有危险慎用)
  • IntelliJ IDEA全局内容搜索和替换教程图解

标签:钦州 阜阳 延边 驻马店 黑河 南昌 中卫 临夏

巨人网络通讯声明:本文标题《Idea使用正则表达式批量替换字符串的方法》,本文关键词  Idea,使用,正则,表达式,批量,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Idea使用正则表达式批量替换字符串的方法》相关的同类信息!
  • 本页收集关于Idea使用正则表达式批量替换字符串的方法的相关信息资讯供网民参考!
  • 推荐文章