替换每个。 (点)带有-(连字符),但点用数字包围时除外。例如:.a.b.1.2.
应该变成-a-b-1.2-
我尝试了代码
/(^\.|\.$|\b\.\b)(?!\d\.\B)/gm
替代
-
返回结果
测试8/11:再次阅读任务说明。请勿触摸夹在数字之间的任何东西!
如何修改正则表达式?
正则表达式demo
答案 0 :(得分:3)
尝试此正则表达式:
(?<=\D|^)\.|\.(?=\D|$)
并替换为-
。
说明:
只有4种情况下要匹配点:
正则表达式只找到所有四种情况。
正如revo在评论中建议的那样,可以将其简化为:
(?<!\d)\.|\.(?!\d)
如果您的正则表达式引擎不支持向后看,则可以将它们替换为组:
(\D|^)\.|\.(\D|$)
并替换为$1-$2
。
答案 1 :(得分:0)