Bik*_*iki 2 javascript regex string
我使用下面的代码片段来验证我的输入字符串:只有大写字母,数字和两个特殊字符(那些是&和Ñ)并且之间没有任何空格.
var validpattern = new RegExp('[^A-Z0-9\d&Ñ]');
if (enteredID.match(validpattern))
isvalidChars = true;
else
isvalidChars = false;
Run Code Online (Sandbox Code Playgroud)
测试1:"XAXX0101%&&$#"应该失败即isvalidChars = false;(因为它包含无效字符,如%$#.
测试2:"XAXX0101&Ñ3Ñ&"应该通过.
测试3:"XA 87B"应该失败,因为它之间包含空格
上面的代码不起作用,任何人都可以帮我纠正上面的正则表达式.
cod*_*ict 11
发生这种情况是因为你有一个否定(^)内的字符类.
你想要的是: ^[A-Z0-9&Ñ]+$或^[A-Z\d&Ñ]+$
做出的改变:
[0-9]和...一样\d.所以使用它们中的任何一个,而不是两者,尽管使用它们并不是不正确的,但它是多余的.^)和结束锚点($)以匹配整个
字符串而不是它的一部分.+,因为字符类匹配单个
字符.| 归档时间: |
|
| 查看次数: |
15253 次 |
| 最近记录: |