我想检查一下javascript中的字符串是否是严格的ALPHANUMERIC。有效字符串不应包含任何特殊字符,并且必须至少包含一个大写或小写字母和一个数字。
aaa
,1111
,112@#
,12qw#
:无效aaa111
,12abc
,abc123abc
,12bc12
:有效任何人都可以帮我构建正则表达式吗?
答案 0 :(得分:6)
使用/^(\d+[a-z]|[a-z]+\d)[a-z\d]*$/i
:
> /^(\d+[a-z]|[a-z]+\d)[a-z\d]*$/i.test('111aa')
true
> /^(\d+[a-z]|[a-z]+\d)[a-z\d]*$/i.test('aaa222')
true
> /^(\d+[a-z]|[a-z]+\d)[a-z\d]*$/i.test('aaa')
false
> /^(\d+[a-z]|[a-z]+\d)[a-z\d]*$/i.test('222')
false
> /^(\d+[a-z]|[a-z]+\d)[a-z\d]*$/i.test('112aaa#')
false
答案 1 :(得分:1)
/^[a-z0-9]*([a-z]\d|\d[a-z])[a-z0-9]*$/i
导入位在中间:它是一个字母后跟一个数字,或一个数字后跟一个字母。如果有效字符串中至少包含一个字符串,则必须存在字符串的一部分。然后我们只用两个或更多的字母数字字符填充两边。