使用字母数字和特殊字符验证正则表达式

时间:2013-12-19 03:16:32

标签: regex

试图让这个正则表达式工作:

^([a-zA-Z]+)([a-zA-Z0-9\.\(\)]*){1,10}$


([a-zA-Z]+)
起始字符必须是a-zA-Z,然后是相同范围内的其他字符,这些字符有效。

([a-zA-Z0-9\.\(\)]*)
任意数量的其他字符可以是a-zA-Z. ( ),而且还可以。

使{1,10}将长度限制为不超过10个字符,最小为1个字符;那部分不起作用。我尝试使用不同的括号组合,但无法获得验证的长度。

1 个答案:

答案 0 :(得分:1)

使用此:

^[A-Za-z][a-zA-Z0-9.()\s-]{0,9}$

已更新以包含对空白和-

的支持

您不能将{x,x}范围类用于多个捕获组;它仅适用于单个字符或字符类。

由于您知道您希望它至少为1个字符,[A-Za-z](在^行的开头)已经要求;其余的,您现在可以使用{0,9}允许0或9次,使用结束行$填写语句。

请参阅Live demo