在VScode中使用正则表达式替换字符串的3个步骤?

本文讲述了在VScode中如何使用正则表达式解决两个场景下的字符串替换问题,包括替换以SET开头的字符串和SET_xxx_MM_xxx格式的字符串。作者强调了元组功能在编写替换规则中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

快速回忆点:

搜索: ^(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. 步骤1:正则搜索
    在这里插入图片描述
  2. 步骤2:撰写正确的替换变量填写
    在这里插入图片描述
  3. 步骤3:替换
    (建议把大小写也打开就更加准确了)
    在这里插入图片描述

后记

VScode这个功能极好。正则匹配几乎可以涵盖一切行为。比awk、sed、python等更加直观操作方便。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值