具有至少一位数的字母数字的正则表达式

时间:2013-01-29 19:18:06

标签: javascript regex

我正在尝试将字母数字字符串与至少一个数字匹配。 第二个条件是它的最小长度应为3。

例如,以下字符串应匹配

111
12345
ABCD1
123A
11AA11

以下内容不应与

相符
ABCD
AB
12
1A

我已经达到了能够获得第一个条件的地步。 也就是说,至少有一位数:

([a-zA-z0-9]*[0-9]+[a-zA-z0-9]*)

但我不知道指定最小长度。如果我尝试使用{3}, 它至少需要3个数字。

2 个答案:

答案 0 :(得分:3)

尝试使用a positive lookahead确定至少有一个数字,并使用{3,}表示它应至少匹配3个字符:

/^(?=.*\d)[a-z\d]{3,}$/i

答案 1 :(得分:1)

你可以使用lookahead来确保你的表达式包含一个数字,然后匹配最小三个字符:

/^(?=.*?\d)[a-zA-Z0-9]{3,}$/