js正则表达式讲解之index属性(RegExp对象)
(编辑:jimmy 日期: 2024/11/28 浏览:3 次 )
功能: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>
基本语法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>
下一篇:js正则表达式之input属性($_)RegExp对象属性介绍