RegExp对象
创建RegExp对象的语法:
new RegExp(pattern,attributes);
pattern:是一个字符串,制定了正则表达式的模式或者其他正则表达式
attributes:g--表示全局查找 -区分大小写
[abc]--查找方括号內的任意字符
[^abc]--查找不在方括号内的任意字符
[0-9]--查找0-9的数字
[a-z]--查找从小写a到小写z的字符
[A-z]--查找从大写A到小写z的字符
\d --查找数字
\D --查找非数字字符
\s --查找空白字符
\S --查找非空白字符
\n --查找换行符
\f -- 查找换页符
\r --查找回车符
n+ --匹配包含至少一个n的字符串
n* --匹配包含0个或多个n的字符串
n? --匹配包含0个或1个n的字符串
n{X}--匹配x个n的序列字符串
n{X,Y}--匹配x至y个n序列的字符串
n{X,}--匹配至少x个n序列的字符串
n$--匹配n结尾的字符串
^n--匹配n开头的字符串
?=n--匹配其后紧接n的字符串
?!=n--匹配其后不紧接n的字符串
支持正则表达式的string对象方法
search --检索与正则表达式相匹配的值
match --找到一个或多个正则表达式的匹配
replace--替换与正则表达式匹配的字符串
split --把字符串分割为数组
p>习近的平是我们国家的主席,周永康是个过去式,中共中央的6.4次,周永康巴拉巴拉</p>
<script>
var p = document.querySelector(‘p‘);
var str = p.innerhtml;
var newStr = str.replace(/(豆豆)|(放放风)|(中共)|(6.4)/g,function($1) {
return `<span style=‘color: red;‘>${$1}</span>`;
});
p.innerHTML = newStr;
</script>
最后使用字符串的String.prototype.replace
方法,其第二个参数可以传入函数,指定匹配到的每一项的返回值。