REGEX最少8位数或null

时间:2014-04-28 08:18:33

标签: jquery regex

任何人都可以帮助我解决我的问题。我想要的是创建一个接受8位及以上或空字符串的正则表达式。

这是我的代码:

/^(?:(.+)?\d+(.+)?){8}$/

我的代码接受8位及以上但不是空字符串。

有人能帮助我吗?感谢

3 个答案:

答案 0 :(得分:2)

假设您的意思是至少8位数字或空字符串,这将起作用:

^((\D*\d\D*){8,}|)$

零个或多个非数字字符\D*后跟数字\d,后跟零个或多个非数字,8次或更多次。或者字符串的开头后跟结尾(空字符串)。

测试出来:

/^((\D*\d\D*){8,}|)$/.test("")
true
/^((\D*\d\D*){8,}|)$/.test("a1b2c3d4")
false
/^((\D*\d\D*){8,}|)$/.test("a1b2c3d4e5f6g7h8")
true
/^((\D*\d\D*){8,}|)$/.test("a1b2c3d4e5f6g7h8i9j")
true

答案 1 :(得分:0)

我认为这应该有效:

/^(?:(.+)?\d+(.+)?){8}|null$/

答案 2 :(得分:0)

如果我理解你,试试这个:

/^(?:(.+)?\d+(.+)?){8}|$/