正则表达式匹配具有不同数字和最小长度的数字

2024-04-03

我正在尝试编写一个正则表达式(以验证 c# .NET Core 模型上的属性,该模型生成 javascript 表达式)来匹配由至少两个不同数字和最小长度为 6 位数字组成的所有数字。

例如:

222222 - 无效

122222 - 有效

1111125 - 有效

我正在尝试以下表达:(\d)+((?!\1)(\d)),它匹配序列 if 有不同的数字,但我如何将整个模式的大小限制为{6,} ?

非常感谢


您可以使用

^(?=\d{6})(\d)\1*(?!\1)\d+$

See the 正则表达式演示 https://regex101.com/r/Uaf1Az/5

Details

  • ^- 字符串的开头
  • (?=\d{6})- 至少 6 位数字
  • (\d)- 任何数字都被捕获到第 1 组中
  • \1*- 第 1 组中捕获的值出现零次或多次
  • (?!\1)- 下一个数字不能与第 1 组中的数字相同
  • \d+- 1+数字
  • $- 字符串末尾。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式匹配具有不同数字和最小长度的数字 的相关文章

随机推荐