日期:2014-05-16  浏览次数:20295 次

JS之RegExp对象(二)


RegExp对象的常用方法有test、exec和compile,本节介绍这些方法的功能和用法。最后,对RegExp对象的属性和方法进行一个综合举例。

2.1  test方法

语法格式为test(str)。该方法检查一个字符串中是否存在创建RegExp对象实例时所指定的表达式模式,如果存在就返回True,否则返回False。如果找到匹配项,则会更新RegExp对象中的有关静态属性,以反映匹配情况。

 

2.2  exec方法

语法格式为exec(str)。该方法使用创建RegExp对象实例时所指定的表达式模式对一个字符串进行搜索,并返回一个包含搜索结果的数组。

     如果为正则表达式设置了全局标志(g),可以通过多次调用exec和test方法在字符串中进行连续搜索,每次都是从RegExp对象的lastIndex属性值指定的位置开始搜索字符串。

     如果没有设置全局标志(g),则exec和test方法忽略RegExp对象的lastIndex属性值,从字符串的起始位置开始搜索。

如果exec方法没有找到匹配,返回值为null;如果找到匹配,则返回一个数组,并更新RegExp对象中有关静态属性以反映匹配情况。返回数组中的元素0包含了完整的匹配结果,而元素1~n依次是表达式模式中定义的各个子匹配的结果。

exec方法返回的数组有3个属性,分别是input、index和lastIndex。

     input属性是整个被搜索的字符串。

     index属性是指匹配在整个被搜索字符串中的位置。

     lastIndex属性是指匹配的子字符串的最后一个字符的下一个字符位置。

代码2.1是对该方法的应用举例。

代码2.1  exec()方法应用:2.1.htm

<html><