JS 正则表达式匹配单引号 怎么过滤逗号和引号

本帖子已过去太久远了,不再提供回复功能。JS利用正则配合replace替换指定字符
投稿:whsnow
字体:[ ] 类型:转载 时间:
替换指定字符的方法有很多,在本文为大家详细介绍下,JS利用正则配合replace是如何做到的,喜欢的朋友可以参考下
定义和用法
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
stringObject.replace(regexp,replacement)
参数  描述
regexp 必需。规定了要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
replacement 必需。一个字符串值。规定了替换文本或生成替换文本的函数。
一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。
字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。
replacement 可以是字符串,也可以是函数。如果它是字符串,那么没有匹配都将由字符串替换。但是 replacement 中的 $ 字符具有特定的含义。如下表所示,它说明从模式匹配得到的字符串将用于替换。
字符  替换文本
$1、$2、...、$99  与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。
$& 与 regexp 相匹配的子串。
$` 位于匹配子串左侧的文本。
$' 位于匹配子串右侧的文本。
% 直接量符号。
注意:ECMAScript v3 规定,replace() 方法的参数 replacement 可以是函数而不是字符串。在这种情况下,每个匹配都调用该函数,它返回的字符串将作为替换文本使用。该函数的第一个参数是匹配模式的字符串。接下来的参数是与模式中的子表达式匹配的字符串,可以有 0 个或多个这样的参数。接下来的参数是一个整数,声明了匹配在 stringObject 中出现的位置。最后一个参数是 stringObject 本身。
在本例中,我们将使用 "W3School" 替换字符串中的 "Microsoft":
&script type="text/javascript"&
var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/, "W3School"))
Visit W3School!
在本例中,我们将执行一次全局替换,每当 "Microsoft" 被找到,它就被替换为 "W3School":
&script type="text/javascript"&
var str="Welcome to Microsoft! "
str=str + "We are proud to announce that Microsoft has "
str=str + "one of the largest Web Developers sites in the world."
document.write(str.replace(/Microsoft/g, "W3School"))
Welcome to W3School! We are proud to announce that W3School
has one of the largest Web Developers sites in the world.
您可以使用本例提供的代码来确保匹配字符串大写字符的正确:
text = "javascript Tutorial";
text.replace(/javascript/i, "JavaScript");
在本例中,我们将把 "Doe, John" 转换为 "John Doe" 的形式:
name = "Doe, John";
name.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1");
在本例中,我们将把所有的花引号替换为直引号:
name = '"a", "b"';
name.replace(/"([^"]*)"/g, "'$1'");
在本例中,我们将把字符串中所有单词的首字母都转换为大写:
name = 'aaa bbb ccc';
uw=name.replace(/\b\w+\b/g, function(word){
return word.substring(0,1).toUpperCase()+word.substring(1);}
var str="fsaf$a$assdfdasfa$a$dsfadsf";
var strr='\$'+'a'+'\$';
var name = '"a", "b"';
var reger=new RegExp("[\$]a[\$]","gm");
alert(str.replace(reger,'555888'));
PS:这里再为大家提供一款功能强大的在线正则工具供大家使用:
JavaScript正则表达式在线测试工具:
正则表达式在线生成工具:
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具如何理解这个匹配JS字符串的正则表达式? - 知乎12被浏览727分享邀请回答21 条评论分享收藏感谢收起05 条评论分享收藏感谢收起查看更多回答2015年5月 Java大版内专家分月排行榜第二2013年5月 Java大版内专家分月排行榜第二
2011年5月 Java大版内专家分月排行榜第三2011年1月 Java大版内专家分月排行榜第三
2013年12月 Java大版内专家分月排行榜第二
2013年8月 Java大版内专家分月排行榜第三
2013年3月 总版技术专家分月排行榜第二
2014年2月 Java大版内专家分月排行榜第一2013年8月 Java大版内专家分月排行榜第一2013年5月 Java大版内专家分月排行榜第一2013年4月 Java大版内专家分月排行榜第一2013年3月 Java大版内专家分月排行榜第一2013年2月 Java大版内专家分月排行榜第一
2013年3月 总版技术专家分月排行榜第二
2014年2月 Java大版内专家分月排行榜第一2013年8月 Java大版内专家分月排行榜第一2013年5月 Java大版内专家分月排行榜第一2013年4月 Java大版内专家分月排行榜第一2013年3月 Java大版内专家分月排行榜第一2013年2月 Java大版内专家分月排行榜第一
本帖子已过去太久远了,不再提供回复功能。正文 js过滤特殊字符(js正则表达式)
js过滤特殊字符(js正则表达式)
发布时间: & 编辑:
本文介绍下,在js中使用正则表达式过滤特殊字符的方法,分享几个例子,帮助大家掌握js中对特殊字符实现过滤的方法,有需要的朋友参考下。
function stripscript(s)
var pattern = new RegExp(&[`~!@#$^&*()=|{}':;',\\[\\].&&/?~!@#¥&&&*()&&|{}【】&;:&&'。,、?]&)
var rs = &&;
for (var i = 0; i & s. i++) {
rs = rs+s.substr(i, 1).replace(pattern, '');
2,校验所有输入域是否含有特殊符号
复制代码 代码示例:
* 校验所有输入域是否含有特殊符号
* 所要过滤的符号写入正则表达式中,注意,一些符号要用'\'转义.
* if(checkAllTextValid(document.forms[0]))
* alert(&表单中所有文本框通过校验!&);
function checkAllTextValid(form)
//记录不含引号的文本框数量
var resultTag = 0;
//记录所有text文本框数量
var flag = 0;
for(var i = 0; i & form.elements. i ++)
if(form.elements[i].type==&text&)
flag = flag + 1;
//此处填写所要过滤的特殊符号
//注意:修改####处的字符,其它部分不许修改.
//if(/^[^####]*$/.test(form.elements[i].value))
if(/^[^\|&'&&]*$/.test(form.elements[i].value))
resultTag = resultTag+1;
form.elements[i].select();
* 如果含引号的文本框等于全部文本框的值,则校验通过
if(resultTag == flag)
alert(&文本框中不能含有\n\n 1 单引号: ' \n 2 双引号: \& \n 3 竖 杠: | \n 4 尖角号: & & \n\n请检查输入!&);
您可能感兴趣的文章:}

我要回帖

更多关于 正则表达式 引号 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信