我有这个正则表达式^[A-Za-z][0-9A-Za-z\.\@\-]{7,59}$
,但在我看来,第一个字符类[A-Za-z]
完全是多余的。这是对的吗?
答案 0 :(得分:11)
不,因为那是坚持字符串以alpha开头(以及ASCII alpha)
^
是起始锚点,因此该字符串必须以alpha开头 - 然后您可以使用第二个字符类指定的任何字符。
如果您使用此正则表达式来验证字符串(某种变量名称?),那么您可能还需要结束锚$
。否则它不会关心跟随匹配...
^[A-Za-z][0-9A-Za-z\.\@\-]{7,59}$
这意味着字符串总共不得超过60个字符(包括前导字母)。
答案 1 :(得分:3)
不,因为^[A-Za-z]
意味着它必须以字母开头(大写与否)。没有它,它可以以字母或数字或与[0-9A-Za-z\.\@\-]