快速回忆点:
搜索: ^(SET_)(.*)(_MM)(.*) 替换: set_$2_mm_$4
场景:
场景1:
假设需要替换下面字符串中的以SET开头的字符串为set,该如何处理?
SET_ABC_DEF SET_123_MCF ABC_SET_ABC
替换后期望目标:
set_ABC_DEF set_123_MCF ABC_SET_ABC
场景2:把下面字符串中带有SET_xxx_MM_xxx的替换为 set_xxx_mm,并且只替换SET作为行开头的
SET_ABC_MM_DEF SET_123_MM_MCF ABC_SET_ABC_MM_abc
替换后期望目标:
set_ABC_mm_DEF set_123_mm_MCF ABC_SET_ABC_MM_abc #注意这里没有被替换,如果直接ctrl F替换这里会被替换
解决办法:
首先人眼可以知道第1 2行需要替换
- 步骤1:使用正则表达式可以表示需求, 然后VScode中使用正则模式搜索,以场景2为例子是:
^SET_.*_MM.*
-
步骤2: 然后进行替换。 如果替换部分也写成SET_._MM.,将会被直接全部替换成.*而不是实际的
-
步骤3:(解决办法:)使用正则的()元组功能,然后将正则拆分成不同的字段,然后替换部分用$1 $2这种变量进行替换
举个例子:
搜索: ^(SET_)(.*)(_MM)(.*) 替换: set_$2_mm_$4
其中$2表示上面第一个.*代表的字段,$4代表第二个.*代表的字段。2 和 4是根据()所代表的位置决定的。
实操:
步骤1:正则搜索
步骤2:撰写正确的替换变量填写
步骤3:替换
(建议把大小写也打开就更加准确了)
后记
VScode这个功能极好。正则匹配几乎可以涵盖一切行为。比awk、sed、python等更加直观操作方便。
到此这篇关于VScode中使用正则表达式替换字符串的3个步骤的文章就介绍到这了,更多相关VScode正则表达式替换字符串内容请搜索IT俱乐部以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT俱乐部!