我需要RegEx来检查我的字符串是一个数字,是4位数。也不是从0开始,不重复任何数字。
e.g:
答案 0 :(得分:0)
这种问题使用正则表达式是如此困难,所以很容易用其他任何东西。
尽管如此,你可以使用一堆前瞻和捕捉小组来完成这项工作,这有点像:
([1-9])(?!.*\1)([0-9])(?!.*\2)([0-9])(?!.*\3)([0-9])(?!.*\4)
如果您只关心这四个数字,并且不关心在线/输入的其余部分找到的任何内容,除了这四个数字之外,您可以控制前瞻的长度,例如:
([1-9])(?!.{0,2}\1)([0-9])(?!.{0,1}\2)([0-9])(?!\3)([0-9])