`
kaobian
  • 浏览: 211743 次
  • 性别: Icon_minigender_1
  • 来自: 哈尔滨
社区版块
存档分类
最新评论

聊聊JS中的RegExp的exec方法

 
阅读更多
今天在研究jQuery源码的时候,发现对RegExp的exec方法不熟悉,就百度了一下,看了一下大概的解释,又结合代码做了一下测试,总结如下,自我感觉比网上很多人解释的要清晰,也请牛人指点
	var quickExpr =/(\d{4})([a-z]{4})(\d{4})([=]{4})/;
	alert(quickExpr.exec("1234abcd5678===="));

从结果我们可以分析出:exec是按照()来分组,并且按照分组的顺序查找到结果的。
这个表达式可分解为
0:(\d{4})([a-z]{4})(\d{4})([=]{4}) //切记第一个肯定是全表达式
1:(\d{4}) //第一个括号,从第一个截取出来的文本中匹配到文本的第一个就返回
2:([a-z]{4}) //第二个括号在截取的文本中去掉第一个,匹配到第一个返回
3:(\d{4})//依次类推
4:([=]{4})
如果第一个表达式不满足,则返回null
如果只有一个小括号,则返回两个,且相同。
这点可以参照java中的 分组捕获 来研究。

上面只是个人一点看法,请大家多多指教
分享到:
评论

相关推荐

    Js-RegExp.rar_javascript_regexp

    在"Js-RegExp.rar_javascript_regexp"这个压缩包中,包含的两个文件——"正则表达式验证表单.html"和"正则表达式案例.html",很可能是两个实际的应用示例,帮助学习者理解并实践JavaScript中的正则表达式。...

    JavaScript中exec函数用法实例分析.docx

    在上面的实例中,我们使用 exec 方法来查找字符串中的匹配结果,并将其存储在 RegExp.$1 和 RegExp.$2 中。然后,我们使用 window.alert 方法来显示匹配结果。 六、exec 函数的注意事项 在使用 exec 函数时,需要...

    关于IE的RegExp.exec的问题

    在现代JavaScript开发中,为了确保跨浏览器的一致性,建议在使用exec方法时,不要依赖于lastIndex属性,或者在IE环境下针对正则表达式创建新的RegExp实例以避免潜在的lastIndex问题。另外,对于全局匹配,可以考虑...

    js-regexp.rar_js regexp pdf

    提供的"JS regexp.pdf"和"JS正则表达式教程.pdf"文档将深入讲解这些知识点,并可能提供示例和练习,以帮助你更好地掌握JavaScript中的正则表达式。 总之,JavaScript中的正则表达式是一个强大而灵活的工具,广泛...

    javascript 中String.match()与RegExp.exec()的区别说明

    JavaScript为开发者提供了String对象和RegExp对象来处理字符串匹配,其中String对象的match方法和RegExp对象的exec方法是实现正则表达式匹配的主要方式。两者在功能上有相似之处,也有明显的差异,以下详细说明。 ...

    RegExp正则表达式

    RegExp 对象的方法包括 exec()、test()、search()、match()、replace() 和 split() 等。 exec() 方法用于检索字符串中的正则表达式的匹配。语法为 RegExpObject.exec(string),其中 string 是要检索的字符串。...

    JavaScript RegExp 正则表达式对象详细说明

    实例中展示了如何使用RegExp对象的`exec()`方法在字符串中执行匹配。`exec()`方法会返回一个数组,包含匹配的结果,如果没有找到匹配项则返回`null`。例如,`var pattern=/a/; document.write(pattern.exec("asdas")...

    JS中实现replaceAll的方法(实例代码)

    标签为“JS replaceAll方法”,意味着我们需要专注于JavaScript语言中的字符串处理能力。 在JavaScript中,传统的replace()方法并不支持直接替换所有匹配项,而是需要使用正则表达式来实现全局替换。这就是为什么在...

    JavaScript的RegExp对象最新版本

    本文档主要讲述的是JavaScript的RegExp...JavaScript的RegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看

    JavaScript-RegExp对象只能使用一次问题解决方法

    在JavaScript中,当使用exec方法对RegExp对象进行匹配操作时,RegExp对象会保留上一次匹配的位置信息。exec方法是全局匹配时使用的,带有“g”标志的正则表达式会记住上一次匹配到的位置,以便下次继续从上次未匹配...

    JavaScript中exec函数用法实例分析

    本文实例讲述了JavaScript中exec函数用法。分享给大家供大家参考。具体如下: javaScript 中的 exec 函数,用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组。 rgExp.exec(str) 参数: ...

    JavaScript使用RegExp进行正则匹配的方法

    本文将介绍JavaScript中使用RegExp对象进行正则匹配的方法,并通过实例分享相关使用技巧。 首先,RegExp对象的构造函数可以创建一个正则表达式对象。构造函数有两种形式:一种是使用new关键字和RegExp构造函数,另...

    MySQL中使用replace、regexp进行正则表达式替换的用法分析

    接着,regexp是MySQL中的正则表达式匹配操作符,用于在字符串中查找匹配正则表达式模式的子字符串。使用regexp可以执行复杂的文本匹配和提取操作。正则表达式具有多种特殊字符,这些字符有特殊的匹配含义。例如,...

    javascript RegExp 用法说明_.docx

    这些属性仅在调用`RegExp`的方法如`test()`或`exec()`之后才被填充。 #### 三、match() 方法 `match()` 方法用于在字符串中搜索与给定正则表达式相匹配的文本。它返回一个包含匹配项的数组或者`null`。 **语法**...

    注意 JavaScript 中 RegExp 对象的 test 方法

    JavaScript 中的 RegExp 对象用于正则表达式相关的操作,这个对象提供了一个方法 test 来判定某个字符串是否满足某个 pattern. 返回值是 true/false. 今天我碰到了一个问题: [Ctrl+A 全选 注:如需引入外部...

    JavaScript RegExp - 快速指南

    正则表达式(Regular Expression)是一种用于描述字符模式的强大工具,在 JavaScript 中通过 `RegExp` 类来实现。它可以帮助开发者进行字符串搜索、替换等操作,极大地提高了处理文本数据的效率。 #### 二、构造...

    RegExp.polyfill.js:用于标志和粘性属性的 javascript RegExp polyfill

    RegExp.polyfill.js 一个 RegExp polyfill hack,用于添加对 Firedox 版本的 RegExp 方法和属性的支持。 具体来说,它增加了对以下方面的支持: RegExp.prototype.flags(粘性) RegExp.prototype.sticky(粘性...

    RegExp

    - **JavaScript**:使用`RegExp`对象,通过`test()`、`exec()`或`match()`等方法进行匹配。 - **Python**:内置`re`模块提供`match()`、`search()`、`findall()`等函数。 - **Java**:`java.util.regex`包下的`...

    js正则表达式中test,exec,match方法的区别说明

    在JavaScript编程语言中,正则表达式是用来处理字符串的一种工具,它提供了一系列的方法来进行模式匹配和文本检索。正则表达式中的test、exec和match方法是经常被使用的方法,它们各自有着不同的功能和用途,以下是...

    js正则表达式中exec用法实例

    在JavaScript中,正则表达式对象有两个主要方法来执行搜索:test和exec。本篇将详细探讨exec方法的用法和实例分析。 首先,exec是正则表达式对象的一个方法,它的作用是执行一个正则表达式匹配。exec方法返回一个...

Global site tag (gtag.js) - Google Analytics