首页 > 编程 > Regex > 正文

用正则提取全部的匹配结果的代码

2020-03-16 21:11:43
字体:
来源:转载
供稿:网友
正则获取匹配的结果,使用match 获取匹配结果数组但又不能获取到子表达式匹配结果
获取最后一个匹配的子表达式 

  1.   
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  3. <html>  
  4. <head>  
  5. <title>Untitled</title>  
  6. </head>  
  7. <body>  
  8. <script language="JavaScript" type="text/javascript">  
  9. <!--  
  10. var strXml="<author>jack</author><author>jack</author>";  
  11. var regExp=/<author>(/w*)<//author>/ig;  
  12. //exec返回一个数组对象  
  13. var arr=strXml.match(regExp);  
  14. var author=arr[1];  
  15. alert(arr);  
  16. //-->  
  17. alert(RegExp.$1);  
  18. </script>  
  19. Hello World!  
  20. </body>  
  21. </html>  


获取全部的匹配结果: 
  1.   
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  3. <html>  
  4. <head>  
  5. <title>Untitled</title>  
  6. </head>  
  7. <body>  
  8. <script language="JavaScript" type="text/javascript">  
  9. <!--  
  10. var strXml = "<author>jack</author><author>jack</author>";  
  11. var regExp= /<author>(/w*)<//author>/gi;  
  12. var result = [];  
  13. var match;  
  14. while( match=regExp.exec(strXml) ){  
  15. result.push(match[1]);  
  16. }  
  17. alert(result);  
  18. //-->  
  19. </script>  
  20. Hello World!  
  21. </body>  
  22. </html>  

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表