正则表达式检测具有连续数字的单词
Regex Detect Word with consecutive number
我需要一个匹配以下内容的正则表达式:
- 该单词至少有 2 个数字
- 数字不连续
这个词应该可以:
abc2def3das
gh2ik7lm2fgd
这个词应该不行:
abc20def3asd
abc262def93f34
我如何使用正则表达式来做到这一点?
我试过
/[0-9][^0-9][0-9]
但这没有用。
您可以试试这个正则表达式:
^(?=\D*\d\D+\d.*$).+$
解释:
^
- 字符串的开头
(?=\D*\d\D+\d.*$)
- 检查字符串是否有 至少 2 个非连续数字(限制为仅 2 位数字,替换 .
与 \D
)
.+
- 任意字符,重复 1 次或多次
$
- 字符串结束
您可能正在寻找:
^\D*\d(?:\D+\d)+\D*$
^
和 $
是字符串开头和结尾的锚点。
我需要一个匹配以下内容的正则表达式:
- 该单词至少有 2 个数字
- 数字不连续
这个词应该可以:
abc2def3das
gh2ik7lm2fgd
这个词应该不行:
abc20def3asd
abc262def93f34
我如何使用正则表达式来做到这一点? 我试过
/[0-9][^0-9][0-9]
但这没有用。
您可以试试这个正则表达式:
^(?=\D*\d\D+\d.*$).+$
解释:
^
- 字符串的开头(?=\D*\d\D+\d.*$)
- 检查字符串是否有 至少 2 个非连续数字(限制为仅 2 位数字,替换.
与\D
).+
- 任意字符,重复 1 次或多次$
- 字符串结束
您可能正在寻找:
^\D*\d(?:\D+\d)+\D*$
^
和 $
是字符串开头和结尾的锚点。