我正在尝试将字母数字字符串与至少一个数字匹配。 第二个条件是它的最小长度应为3。
例如,以下字符串应匹配
111
12345
ABCD1
123A
11AA11
以下内容不应与
相符ABCD
AB
12
1A
我已经达到了能够获得第一个条件的地步。 也就是说,至少有一位数:
([a-zA-z0-9]*[0-9]+[a-zA-z0-9]*)
但我不知道指定最小长度。如果我尝试使用{3}, 它至少需要3个数字。
答案 0 :(得分:3)
尝试使用a positive lookahead确定至少有一个数字,并使用{3,}
表示它应至少匹配3个字符:
/^(?=.*\d)[a-z\d]{3,}$/i
答案 1 :(得分:1)
你可以使用lookahead来确保你的表达式包含一个数字,然后匹配最小三个字符:
/^(?=.*?\d)[a-zA-Z0-9]{3,}$/