【发布时间】:2016-09-13 07:36:34
【问题描述】:
我有下面的正则表达式来验证一个字符串..
var str = "Thebestthingsinlifearefree";
var patt = /[^0-9A-Za-z !\\#$%&()*+,\-.\/:;<=>?@\[\]^_`{|}~]*/g;
var res = patt.test(str);
结果总是会给出 true 但我认为它会给出 false.. 因为我检查了任何不在 patt 变量中的模式......
给定的字符串是有效的,它只包含大写和小写字母。不知道模式有什么问题。
【问题讨论】:
-
你认为这个正则表达式有什么作用?
-
*也不匹配。 -
检查任何不包含 patt 变量的字符。
-
@prababuddy 对您收到的答案有何反馈?
-
@ThomasAyoub,抱歉延迟响应......它工作正常,但我有一个场景来捕获非键盘字符(如版权符号或任何其他语言字符),在这种情况下,正则表达式模式失败了......例如......如果我输入“Ä/ä”这个,正则表达式模式无法捕捉到这个字符。关于这个的任何想法......这对我会有很大的帮助......
标签: javascript regex