js 正则过滤特殊字符?

2024-12-23 08:41:02
推荐回答(4个)
回答1:

您好

js检查是否含有非法字符,js 正则过滤特殊字符

//正则
function trimTxt(txt){
 return txt.replace(/(^\s*)|(\s*$)/g, "");
}
 
/**
 * 检查是否含有非法字符
 * @param temp_str
 * @returns {Boolean}
 */
function is_forbid(temp_str){
    temp_str=trimTxt(temp_str);
temp_str = temp_str.replace('*',"@");
temp_str = temp_str.replace('--',"@");
temp_str = temp_str.replace('/',"@");
temp_str = temp_str.replace('+',"@");
temp_str = temp_str.replace('\'',"@");
temp_str = temp_str.replace('\\',"@");
temp_str = temp_str.replace('$',"@");
temp_str = temp_str.replace('^',"@");
temp_str = temp_str.replace('.',"@");
temp_str = temp_str.replace(';',"@");
temp_str = temp_str.replace('<',"@");
temp_str = temp_str.replace('>',"@");
temp_str = temp_str.replace('"',"@");
temp_str = temp_str.replace('=',"@");
temp_str = temp_str.replace('{',"@");
temp_str = temp_str.replace('}',"@");
var forbid_str=new String('@,%,~,&');
var forbid_array=new Array();
forbid_array=forbid_str.split(',');
for(i=0;i if(temp_str.search(new RegExp(forbid_array[i])) != -1)
return false;
}
return true;
}

--------------------- 

作者:dongsir 董先生 

来源:董先生的博客 

原文链接:js检查是否含有非法字符

版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。转载时请标注:http://dongsir.cn/p/195

回答2:

string1="这是。一,个,包$!含#特殊、字符的字^&/*符串可以\使用正$则表达式[]去除其{中的特}殊字|符"

结果: "这是。一,个,包$!含#特殊、字符的字^&/*符串可以使用正$则表达式[]去除其{中的特}殊字|符"

string1.replace(/\^|\.|\*|\?|\!|\/|\\|\$|\#|\&|\||,|\[|\]|\{|\}|\(|\)|\-|\+|\=/g," ");

结果: "这是。一,个,包 含 特殊、字符的字 符串可以使用正 则表达式 去除其 中的特 殊字 符"

回答3:

就是正则写的有问题啊。
function illegalChar(str)
{
var pattern=/[`~!@#\$%\^\&\*\(\)_\+<>\?:"\{\},\.\\\/;'\[\]]/im;
if(pattern.test(str)){
return false;
}
return true;
}
alert(illegalChar("123?"));

应该就这样啊

回答4:

给你 个参考 :(其中param参数为你要过滤的字符)
function illegalChar(str,param)
{
var reg = "[`~!@#\$%\^&\*\(\)_\+<>\?:\"{},\.\/;'\[\\]]";
if(param){
reg = reg.replace(param,'');
}
var pattern=new RegExp(reg,'im');
if(pattern.test(str)){
return false;
}
return true;
}