js正则表达式讲解之index属性(RegExp对象)

  功能:index与search返回的值相同,不管是是否匹配到合适内容,如果找到合适内容则index为匹配内容其实字符的起始位置,如果没有找到则返回-1

  基本语法RegExp.index

  注意:该属性也是RegExp的静态属性,调用方式固定。

  

复制代码 代码如下:

  <html>

  <script language="javascript" type="text/javascript">

  //alert('Designed By Androidyue');

  //设置正则表达式,匹配类似12021这样的,个位和万位相同,十位和千位相同的数字,非全局只进行一次匹配

  var re=/(/d)(/d)/d/2/1/;

  //var re=/3(/d+)/;

  //要进行匹配的数据

  var objStr='1101011100110101100110011001';

  //使用search方法,返沪第一次匹配内容的起始位置,注意字符串的最开始的地址是0不是1

  var pos=objStr.search(re);

  //如果search方法没有找到合适的匹配内容则返回1

  if(pos==-1){

  //document.write("没有找到符合条件的匹配内容!"+RegExp.index);

  document.write(("没有找到符合条件的匹配内容!");

  }else{//如果search方法能找到合适的匹配内容,则返回匹配内容起始字符串的额位置

  var arr=objStr.match(re);//将合适的匹配内容存入数组中

  document.write("在"+pos+"位置找到了第一个匹配,匹配内容为"+arr[0]+"<br>");

  document.write("此时RegExp.index的值为"+RegExp.index);//在ie核心的浏览器中显示1(和pos一样),在chrome,ff,opera都是显示undefined

  }

  </script>

  </html>