首页 > 编程 > Regex > 正文

js正则表达式之RegExp对象属性lastIndex,lastMatch($&),lastParen($+),lastContext,rightContext属性的讲解

2020-03-16 21:08:46
字体:
来源:转载
供稿:网友

1.lastIndex属性,返回匹配内容的最后一个索引位置,也就是下一个匹配的开始位置,注意字符串索引从0开始

代码:

 

  1.   
  2. <html>  
  3. <script language="javascript" type="text/javascript">  
  4. //设置要匹配的内容  
  5. var objStr="abfdabcd";  
  6. //设置匹配的正则表达式  
  7. var re=/abc/;  
  8. //输出匹配前的字符串  
  9. document.write("未匹配前的字符串"+objStr+"<br>");  
  10. //输出匹配的内容  
  11. document.write("匹配的内容"+objStr.match(re)+"<br>");  
  12. //document.write(RegExp.index);  
  13. //输出匹配内容的最后一个索引  
  14. document.writeln("最后一个匹配位置"+RegExp.lastIndex);  
  15. </script>  
  16. </html>  
 
2.lastMatch($&)属性,只读属性,如果没有匹配信息,则该属性的值为空字符串 

  1.   
  2. <html>  
  3. <script language="javascript" type="text/javascript">  
  4. //要匹配的字符串  
  5. var objStr="Designed By Androidyue";  
  6. //进行相关匹配的正则表达式  
  7. var re=/n(/w)/g;  
  8. //输出匹配前的字符串  
  9. document.writeln("匹配前的字符串"+objStr);  
  10. //进行字符串的匹配  
  11. var arr=objStr.match(re);  
  12. //输出最后一个子匹配的结果  
  13. document.write("最后一个子匹配的结果"+RegExp.lastMatch);//结果nd  
  14. //document.write("最后一个子匹配的结果"+RegExp.$&);//如果浏览器不支持这样形式,这样试试document.write(RegExp["$&"]);  
  15. </script>  
  16. </html>  


3.lastParen属性 只读静态属性,该属性返回在最近一次匹配检测中所得到的最后一个子匹配的值,如果没有子匹配则返回空字符串 


  1.   
  2. <html>  
  3. <script language="javascript" type="text/javascript">  
  4. //要匹配的字符串  
  5. var objStr="Designed By Androidyue";  
  6. //进行相关匹配的正则表达式  
  7. var re=/n(/w)/;  
  8. //输出匹配前的字符串  
  9. document.writeln("匹配前的字符串"+objStr);  
  10. //进行字符串的匹配  
  11. var arr=objStr.match(re);  
  12. //输出最后一个子匹配的结果  
  13. document.write("最后一个子匹配的内容"+RegExp.lastParen);  
  14. //document.write("最后一个子匹配的内容"+RegExp.$+);//如果浏览器不支持这样形式,这样试试document.write(RegExp["$+"]);  
  15. </script>  
  16. </html>  


4.leftContext属性 返回匹配内容左侧的字符信息 该属性的初始值为空字符串 ,如果有相应的匹配该属性的值就会改变 
  1.   
  2. <html>  
  3. <script language="javascript" type="text/javascript">  
  4. //要匹配的字符串  
  5. var objStr="Designed By Androidyue";  
  6. //进行相关匹配的正则表达式  
  7. var re=/n(/w)/;  
  8. //输出匹配前的字符串  
  9. document.writeln("匹配前的字符串"+objStr);  
  10. //进行字符串的匹配  
  11. var arr=objStr.match(re);  
  12. //输出最后一个子匹配的结果  
  13. document.write("匹配内容左侧的字符信息"+RegExp.leftContext);  
  14. </script>  
  15. </html>  


5.rightContext属性 返回匹配内容右侧的字符信息 ,只读静态属性 初始值为空字符串,如果有匹配则返回匹配内容右侧的信息 


  1.   
  2. <html>  
  3. <script language="javascript" type="text/javascript">  
  4. //要匹配的字符串  
  5. var objStr="Designed By Androidyue";  
  6. //进行相关匹配的正则表达式  
  7. var re=/n(/w)/;  
  8. //输出匹配前的字符串  
  9. document.writeln("匹配前的字符串"+objStr);  
  10. //进行字符串的匹配  
  11. var arr=objStr.match(re);  
  12. //输出最后一个子匹配的结果  
  13. document.write("匹配内容右侧的字符信息"+RegExp.rightContext);  
  14. </script>  
  15. </html>  

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