javascript 中正则表达式应用

时间:2024-08-03 13:06:56
     <script type="text/javascript">
var str="<script type='text/javascript'> var a=100,b=200;<\/script>";
var dsc=str.replace(/(<script\s+[^>]*?>)(.*)(<\/script>)/ig,function(a,b,c,d,e){
console.log(a);
console.log(b);
console.log(c);
console.log(d);
console.log(e);
});
</script>

输出结果为:

javascript 中正则表达式应用

函数参数和正则匹配结果数组元素一一对应,第一个是整个表达式,第二个是第一个子表达式

str.match(//) 和//.exec()用法区别
.非全局匹配
//.exec()只执行一次,找到匹配的结果就返回一个数组,数组第一个元素是匹配结果,第二个是分组...
str.match(//)只执行一次,找到匹配的结果就返回一个数组,数组第一个元素是匹配结果,第二个是分组...
.全局模式
//.exec()还是只执行一次,找到匹配的结果就返回一个数组,数组第一个元素是匹配结果,第二个是分组...
str.match(//)会执行多次匹配,但是返回的是所有匹配子串,没有分组的了