Javascript 中的正则表达式问题转义特殊字符
Regex Issue in Javascript escape special characters
validateName = function (str) {
if (((/[!@#$%^&*()_+=-`~,.<>;':"\/\[\]\|{}(_+]/)).test(str)) {
return false;
}
if (str.length <= 2 || str.length >= 19) {
return false;
}
return true;
}
你好,在上面的正则表达式中,我试图接受一个 3 到 20 个字符之间的名称,它不应包含任何特殊字符,它可以包含字母数字字符。
问题是不允许我使用大写字母。
它还可以接受任何语言的单词。
谢谢
您只需将您的方法替换为
validateName = function (str) {
if ( (/\W+/).test(str) || str.length <= 2 || str.length >= 19 )
{
return false;
}
return true;
}
\W+
检查所有特殊字符。
您必须包含您想要的其他语言的所有字符,否则下面的正则表达式就足够了
var regex = /[^\w\s]+/;
例子
validateName = function (str) {
var regex = /[^\w\s]+/;
if (regex.test(str) || str.length <= 2 || str.length >= 19 )
{
return false;
}
return true;
}
validateName = function (str) {
if (((/[!@#$%^&*()_+=-`~,.<>;':"\/\[\]\|{}(_+]/)).test(str)) {
return false;
}
if (str.length <= 2 || str.length >= 19) {
return false;
}
return true;
}
你好,在上面的正则表达式中,我试图接受一个 3 到 20 个字符之间的名称,它不应包含任何特殊字符,它可以包含字母数字字符。 问题是不允许我使用大写字母。 它还可以接受任何语言的单词。 谢谢
您只需将您的方法替换为
validateName = function (str) {
if ( (/\W+/).test(str) || str.length <= 2 || str.length >= 19 )
{
return false;
}
return true;
}
\W+
检查所有特殊字符。
您必须包含您想要的其他语言的所有字符,否则下面的正则表达式就足够了
var regex = /[^\w\s]+/;
例子
validateName = function (str) {
var regex = /[^\w\s]+/;
if (regex.test(str) || str.length <= 2 || str.length >= 19 )
{
return false;
}
return true;
}