码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript正则表达式模式匹配(3)——贪婪模式和惰性模式

时间:2018-01-31 18:41:59      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:就是   javascrip   屏蔽   正则表达式   java   包含   nbsp   replace   doc   

 1 var pattern=/[a-z]+/;    //这里使用了贪婪模式,
 2 var str=‘abcdefg‘;   
 3 alert(str.replace(pattern,‘1‘));  //所有的字符串变成了1
 4 
 5 var pattern=/[a-z]+?/;    //这里使用了惰性模式,
 6 var str=‘abcdefg‘;   
 7 alert(str.replace(pattern,‘1‘));  //只有第一个字符变成了1,后面没有匹配
 8     
 9 var pattern=/[a-z]+?/;    //开启全局,并且使用惰性模式,
10 var str=‘abcdefg‘;   
11 alert(str.replace(pattern,‘1‘));  //每一个字母替换成了1
12 
13 var pattern=/6(.*)6/;    //使用了贪婪模式,
14 var str=‘6google6 6google6 6google6‘;   //匹配到了google6 6google6 6google
15 document.write(str.replace(pattern,‘<strong>$1<strong>‘)); //结果:<strong>google6 6google6 6google<strong>
16 
17 var pattern=/6(.*?)6/;    //使用了惰性模式,
18 var str=‘6google6 6google6 6google6‘;   
19 document.write(str.replace(pattern,‘<strong>$1<strong>‘)); //结果:<strong>google<strong> 6google6 6google6
20 
21 var pattern=/6(.*?)6/g;    //使用了惰性模式,开启全局
22 var str=‘6google6 6google6 6google6‘;   
23 document.write(str.replace(pattern,‘<strong>$1<strong>‘)); 
24 //结果:<strong>google<strong> <strong>google<strong> <strong>google<strong>
25 //结果正确
26 
27 var pattern=/6([^6]*)6/g;    //另一种惰性,屏蔽了6的匹配,也就是两边的包含字符
28 var str=‘6google6 6google6 6google6‘;   
29 document.write(str.replace(pattern,‘<strong>$1<strong>‘)); 

 

JavaScript正则表达式模式匹配(3)——贪婪模式和惰性模式

标签:就是   javascrip   屏蔽   正则表达式   java   包含   nbsp   replace   doc   

原文地址:https://www.cnblogs.com/guoxiangyue/p/8393400.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!