【发布时间】:2021-08-11 09:13:46
【问题描述】:
我创建了一个自定义正则表达式,它适用于任何动态数字。但它不包含/接受前导零。
这是我的正则表达式:
Dial(0|[1-9][0-9]*)_(0|[1-9][0-9]*)
当我在 regexr 中测试时,我观察到它不接受前导零部分的下一个 (未突出显示)
它应该接受“Dial733_001”、“Dial26_0000005”、“Dial6_00100”
它不应该接受 "Dial6s_001"、"Dials6_001"、"Dial1_s001"、"Dial1_001s"
【问题讨论】:
-
您的意思是从捕获中排除零吗?
Dial0*([1-9][0-9]*)_0*([1-9][0-9]*)? -
@WiktorStribiżew 我的意思是它应该接受/捕获前导零。您的答案部分正确,但它最终接受字符串,例如 "Dial552_99944ssss"
-
然后添加一个单词边界,
Dial0*([1-9][0-9]*)_0*([1-9][0-9]*)\b -
@WiktorStribiżew 谢谢先生的帮助。你会把它作为答案发布,所以我会接受。或者我会直接关闭问题?
标签: javascript regex