转
http://www.w3school.com.cn/js/jsref_exec_regexp.asp
定义和用法
exec() 方法用于检索字符串中的正则表达式的匹配。
语法
RegExpObject.exec(string)参数 描述
string 必需。要检索的字符串。
返回值
返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。
说明
exec() 方法的功能非常强大,它是一个通用的方法,而且使用起来也比 test() 方法以及支持正则表达式的 String 对象的方法更为复杂。
如果 exec() 找到了匹配的文本,则返回一个结果数组。否则,返回 null。此数组的第 0 个元素是与正则表达式相匹配的文本,第 1 个元素是与 RegExpObject 的第 1 个子表达式相匹配的文本(如果有的话),第 2 个元素是与 RegExpObject 的第 2 个子表达式相匹配的文本(如果有的话),以此类推。除了数组元素和 length 属性之外,exec() 方法还返回两个属性。index 属性声明的是匹配文本的第一个字符的位置。input 属性则存放的是被检索的字符串 string。我们可以看得出,在调用非全局的 RegExp 对象的 exec() 方法时,返回的数组与调用方法 String.match() 返回的数组是相同的。
但是,当 RegExpObject 是一个全局正则表达式时,exec() 的行为就稍微复杂一些。它会在 RegExpObject 的 lastIndex 属性指定的字符处开始检索字符串 string。当 exec() 找到了与表达式相匹配的文本时,在匹配后,它将把 RegExpObject 的 lastIndex 属性设置为匹配文本的最后一个字符的下一个位置。这就是说,您可以通过反复调用 exec() 方法来遍历字符串中的所有匹配文本。当 exec() 再也找不到匹配的文本时,它将返回 null,并把 lastIndex 属性重置为 0。Index 属性中包含了整个被查找字符串中被匹配的子字符串的位置。
提示和注释
重要事项:如果在一个字符串中完成了一次模式匹配之后要开始检索新的字符串,就必须手动地把 lastIndex 属性重置为 0。
提示:请注意,无论 RegExpObject 是否是全局模式,exec() 都会把完整的细节添加到它返回的数组中。这就是 exec() 与 String.match() 的不同之处,后者在全局模式下返回的信息要少得多。因此我们可以这么说,在循环中反复地调用 exec() 方法是唯一一种获得全局模式的完整模式匹配信息的方法。
<script type="text/javascript">
var str = "Visit W3School W3Schoo";
var pattern = new RegExp('W3Schoo', 'g');
var result;
while ((result = pattern.exec(str)) != null)
{
document.write(result);
document.write("<br />");
document.write(result.index );
document.write("<br />");
document.write(pattern.lastIndex);
document.write("<br />");
}
</script>
分享到:
相关推荐
exec 函数是 JavaScript 中的一种方法,用于在字符串中执行查找。它的基本语法为:rgExp.exec(str),其中 rgExp 是一个正则表达式对象,str 是要在其中执行查找的字符串。 二、exec 函数的用法 exec 函数的用法...
深化剖析javascript中的exec与match方法_.docx
本文实例讲述了JavaScript中exec函数用法。分享给大家供大家参考。具体如下: javaScript 中的 exec 函数,用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组。 rgExp.exec(str) 参数: ...
exec方法的特点是它可以重复使用同一个正则表达式对象去匹配一个字符串中的多次出现的模式。它会返回一个数组,如果匹配成功,数组的第一个元素是匹配到的字符串,如果正则表达式有分组,则后续元素会依次是每个分组...
JavaScript应用实例-exec的实践.js
在JavaScript中,正则表达式的处理离不开一些基本的方法,其中exec方法是经常使用到的一个。本文将详细讲解JavaScript中正则表达式exec方法的使用方法和相关知识点。 首先,需要了解exec方法的基本作用:exec方法...
`Runtime.getRuntime().exec(command)` 是最基础的方法,用于执行指定的系统命令。`command`参数是一个字符串,表示要执行的命令。例如,如果你想要运行`dir`命令,可以这样写: ```java String command = "cmd /...
这就是`exec`函数的作用,它允许我们在JavaScript中安全地调用具有`exec`功能的子进程。`exec`是Node.js中的一个核心模块`child_process`的一部分,用于执行命令行命令并获取其输出。 `child_process.exec`方法接收...
标题和描述中提到了JavaScript正则表达式中exec方法和全局修饰符g的用法,并通过实例演示了如何使用它们来实现对字符串的多次循环匹配。在JavaScript中,正则表达式用于进行模式匹配和文本处理,而exec方法和全局...
2. **对象创建与原型Prototype**: JavaScript使用`new`关键字创建对象实例,原型链允许对象间共享属性和方法,`__proto__`或`prototype`属性是理解这一机制的关键。 3. **函数对象Function**: 在JavaScript中,函数...
js-exec是一个简单的扩展,允许您在任何网页中注入自己JavaScript。 您还可以编写您自己JavaScript应用程序并随时随地快速运行它们。 /!\此扩展位于开发之下。 许多功能和潜在的错误修复即将推出。 您还可以通过...
在JavaScript中,正则表达式相关的方法提供了便捷的手段以执行这些匹配操作,而exec方法正是其中非常重要的一个。 exec方法是RegExp对象的一个方法,用于检索字符串中的正则表达式的匹配。它的返回值是一个数组,...
本文将详细探讨PCRE库中的核心函数`pcre_exec`,以及在JavaScript的正则执行上下文中的具体应用——`jsRegExpExecute`源码。 PCRE库是Perl语言风格的正则表达式实现,它提供了高效且功能丰富的API供开发者使用。`...
if (patrn.exec(temp) == null) { icount = icount + 1 } else { icount = icount + 2 } strre += temp } else { break } } return strre + "..." } ``` 2. 原生 JavaScript 获取域名主机 在 ...
4. **错误处理**:`native-exec`提供了一种直接处理错误的方法,可以捕获并处理来自系统调用的错误代码,这对于调试和异常处理非常有用。 5. **跨平台兼容性**:虽然POSIX接口主要针对Unix-like系统,如Linux和...