正则表达式检测具有连续数字的单词

Regex Detect Word with consecutive number

我需要一个匹配以下内容的正则表达式:

这个词应该可以:

abc2def3das
gh2ik7lm2fgd

这个词应该不行:

abc20def3asd
abc262def93f34

我如何使用正则表达式来做到这一点? 我试过

/[0-9][^0-9][0-9]

但这没有用。

您可以试试这个正则表达式:

^(?=\D*\d\D+\d.*$).+$

Demo

解释:

  • ^ - 字符串的开头
  • (?=\D*\d\D+\d.*$) - 检查字符串是否有 至少 2 个非连续数字(限制为仅 2 位数字,替换 .\D)
  • .+ - 任意字符,重复 1 次或多次
  • $ - 字符串结束

您可能正在寻找:

^\D*\d(?:\D+\d)+\D*$

^$ 是字符串开头和结尾的锚点。