RegExp对象的exec方法应用
程序员文章站
2022-04-26 19:12:11
...
一 介绍
用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组。
语法:
rgExp.exec(str)
rgExp:必选项。包含正则表达式模式和可用标志的正则表达式对象。
Str:必选项。要在其中执行查找的 String 对象或字符串文字。
如果exec方法没有找到匹配,则返回 null。
如果找到匹配,则返回一个数组,并且更新全局RegExp对象的属性,以反映匹配结果。
数组的0元素包含了完整的匹配,而第1到n元素中包含的是匹配中出现的任意一个子匹配。这相当于没有设置全局标志(g)的match方法。
如果为正则表达式设置了全局标志,exec从以lastIndex的值指示的位置开始查找。
如果没有设置全局标志,exec忽略lastIndex的值,从字符串的起始位置开始搜索。
exec方法返回的数组有3个属性,分别是 input、index和lastIndex。
Input属性包含了整个被查找的字符串。
Index属性包含了整个被查找字符串中被匹配的子字符串的位置。
LastIndex属性包含了匹配中最后一个字符的下一个位置。
二 代码
下面的例子说明了应用exec方法来返回一个数组:
<script language="JavaScript">
var src = "I'm a good boy ";
var re = /\w+/g; // 创建正则表达式模式
var arr;
while ((arr = re.exec(src)) != null)
{
document.write(arr.input);
document.write(arr.index+"-"+ arr + "\t");
document.write("<BR>");
}
</script>
三 运行结果
I'm a good boy 0-I
I'm a good boy 2-m
I'm a good boy 4-a
I'm a good boy 6-good
I'm a good boy 11-boy
下一篇: vba regexp vbaregexp