最近接了一个项目,项目需求需要用js正则表达式过滤掉页面文本域中值得双引号,其实解决办法很简单,下面把我写的代码分享给大家,有同样需求的朋友可以参考下。
具体的解决代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<html>
<script language= "javascript" >
//var pattern = /[^"]*/; //校验字符串中是否都是非双引号的字符
var pattern = /["]+/; //校验字符串中是否有双引号的字符
//var pattern = /["][^"]*["]/ //匹配的是位于单引号或者双引号之内的0个或多个字符
var value1 = "The best things in life are free "; //没有双引号的字符串
var value2 = " / "/" The / "best things /" in life are free/ "/" "; //有双引号的字符串
alert(" value1没有双引号的字符串 pattern.exec_1=== " + pattern.exec(value1)); //null
alert(" value1没有双引号的字符串 !pattern.exec_2=== " + !pattern.exec(value1)); //true
alert(" value2有双引号的字符串 pattern.exec_1=== " + pattern.exec(value2)); //" "
alert(" value2有双引号的字符串 !pattern.exec_2=== " + !pattern.exec(value2)); //false
if(pattern.exec(value1)){ //校验字符串中是否都是非双引号的字符
alert(" value1 没有加非号 ++++++双引号被匹配上 ");
}
if(!pattern.exec(value1)){ //校验字符串中是否有双引号的字符
alert(" value1 有加非号 ++++++双引号被匹配上 "); //页面窗口弹出
}
if(pattern.exec(value2)){ //校验字符串中是否都是非双引号的字符
alert(" value2 没有加非号 ++++++双引号被匹配上 "); //页面窗口弹出
}
if(!pattern.exec(value2)){ //校验字符串中是否有双引号的字符
alert(" value2 有加非号 ++++++双引号被匹配上");
}
</script>
</html>
|
以上代码经过IE8浏览器的测试。希望对以后遇到此类似问题的朋友有所帮助。