【问题标题】:Three digits followed by dash after every two digits regex每两位正则表达式后三位数字后跟破折号
【发布时间】:2017-06-30 21:39:19
【问题描述】:

我的目标是在每两位正则表达式上添加三位数字,然后添加一个破折号。

示例:给定

01234342323

我需要获取

012-34-34-23-23

我正在使用这个正则表达式:\B(?=(\d{3})+(?!\d)),但它没有按预期工作。我应该对其进行哪些更改才能使其正常工作?

【问题讨论】:

    标签: regex digit


    【解决方案1】:

    您可以使用以下模式

    ^\d{3}|(?!^)\d{2}(?!$)
    

    替换成

    $0-
    

    此模式将匹配字符串开头的 3 位数字或既不在开头(仅两位数字)也不在结尾(以避免尾随 -)的 2 位数字.替换重新插入匹配的字符串并向其添加-

    https://regex101.com/r/tLsjCE/1

    【讨论】:

      猜你喜欢
      • 2021-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-12
      • 1970-01-01
      • 2021-06-08
      • 2018-11-15
      • 1970-01-01
      相关资源
      最近更新 更多