正则表达式保留【匹配范围内的内容】,然后替换【匹配范围之外的内容】

一、替换匹配范围之外的内容,要求如下:

如题,当前有格式为:

规则40****
规则41****
规则42****

...
    
规则50****
规则51****

...

需要删除后面4个星号,替换为:(要求:删除星号以后,数字序号不能变)

规则40:
规则41:
规则42...
    
规则50:
规则51...

二、正则表达式为:

%s/规则\([4-9][0-9]\):\*\*\*\*/规则\1/gc

三、释义

命令框架:
    %s/AAA/BBB/gc   该命令为全局匹配AAA,并替换为BBB,
                    参数gc表示:每次用户输入Y确认替换,输入N不替换,具体含义不再赘述
                    
命令释义:
    [4-9][0-9]      为匹配2个字符,第一个字符范围为4-9,第二个字符范围为0-9
    \([4-9][0-9]\)  符号\(\)括起来的部分表示一个整体表达式,后面的\1就表示该表达式原封不动放在这
                    备注:
                        \(\)括起来的部分按顺序表达式1 表达式2 表达式3递增,此命令只有一个表达式,\1
                    如:
                        \(aa\)\(bb\)\(cc\)
                    其中:
                        aa为表达式1,使用\1进行调用
                        bb为表达式2,使用\2进行调用
                        cc为表达式3,使用\3进行调用
    \1              表示上述\(\)括起来的表达式

四、核心内容:表达式符号

此次删除/替换动作,主要用到了正则表达式中的“表达式”选项,

用  \(\)  括起来的表达式,使用\1\2\3\...依次递增表示。

    \1   表示第1个表达式
    \2   表示第2个表达式
    \3   表示第3个表达式
    ...
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值