我想允许并以带有数字和 3 个特殊字符的标准英文字符开头,-_.
但它必须至少包含一个A-Za-z
字符
到目前为止我有这个,但它仍然允许在字符串中间使用阿拉伯文和中文字符
/^[a-zA-Z]|\d+[-_.]$/
我想允许并以带有数字和 3 个特殊字符的标准英文字符开头,-_.
但它必须至少包含一个A-Za-z
字符
到目前为止我有这个,但它仍然允许在字符串中间使用阿拉伯文和中文字符
/^[a-zA-Z]|\d+[-_.]$/
试试这个正则表达式:
/^[a-zA-Z][a-zA-Z\d-_\.]+$/
这要求第一个字符是a-zA-Z
,然后允许字母、数字和您的特殊字符用于任何其他字符。
您的RegExp /^[a-zA-Z]|\d+[-_.]$/
正在检查第一个字符是字母还是最后一个字符是数字、连字符、下划线。
你想要的是更像下面的东西(注意如何-
和.
已经被转义)
/^[a-zA-Z][a-zA-Z\d\-_\.]*$|^[a-zA-Z\d\-_\.]*[a-zA-Z]$/
即 String以字母开头,然后有任意数量的字母、数字、连字符、下划线或点,直到结尾或String以字母结尾,并且在其前面有任意数量的字母、数字、连字符、下划线或点。
为了[-a-zA-Z0-9_.]
至少允许一个[a-z]
,您只需要[a-z]
在中间定义任何数量的其他字符。
/^[-a-zA-Z0-9_.]*[a-z][-a-zA-Z0-9_.]*$/