VIM 表达式替换

用表达式计算匹配字符并替换:

:%s# \{12,}\zs\(\d\)\ze\d\{2,}#\=substitute(submatch(0) % 4, '0', '', 'g')
  • \zs \ze 标记替换开始和结束。
  • submatch 标记匹配字符。
  • substitute 将字符串0替换为空字符。

推荐阅读更多精彩内容

  • 推荐几个正则表达式编辑器 Debuggex :https://www.debuggex.com/ PyRegex:...
    杨梦鸽阅读 10,292评论 9 151
  • 几个正则表达式编辑器 Debuggex :https://www.debuggex.com/ PyRegex:ht...
    没技术的BUG开发攻城狮阅读 3,989评论 0 23
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 128,834评论 18 137
  • 正则表达式到底是什么东西?字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等...
    狮子挽歌阅读 1,721评论 0 9
  • 昨天有一个妹子在微信后台问了我一个问题: 多多姐你好,我去年7月毕业,今年是工作第二年。10月份因为不满意上家公司...
    许多许多许多多阅读 738评论 16 9
  • 你决定隐喻还是隐喻决定你? 思维影响你语言的同时,你的语言也在影响你的思维。达尔文的优胜劣汰自然竞争法则深入人心,...
    喵喵僧阅读 153评论 0 4
  • 我刚开始打LOL的时候,用的是德玛。 打了一个月的人机,在昏暗的网吧,就着路边烧烤的劣质老鼠肉和网吧里永远散不尽的...
    莫生日记阅读 170评论 0 3
  • 我们总会在毕业的时候,立下豪言壮语,许下山盟海誓,唱一曲青春不朽,道一句珍重再见。进入工作岗位之后,我们猛然地发现...
    浊酒一壶慰风尘阅读 246评论 1 1