`

javascript正则表达式的反向引用

阅读更多

正则表达式中用"()"括起来的称为分组,例如var patt=/(\w)(\d)/这里就用了分组。有多少组呢?2组。反向引用是按照从左到右遇到的左括号字符的顺序进行编号和创建的。所以是两组。看下面的例子

var str1="1d2a2"

var patt =/(\w)(\d)/

console.log(str1.match(patt))


得到结果为:

["d2", "d", "2"]

前面文章中有讲到,match方法如果正则表达式中没有设置全局的g,那这里的实际上是和exec方法换回的是一样的。数组第一个元素是所有组一起匹配得到的结果。也就是d2是(\w)(\d)匹配str1所得到的结果。从第二个起就是存储的反向应用的匹配的结果。从结果可以看出,反向引用是去匹配数组的第一个元素,也就是所有组匹配字符串得到的结果,而不是去匹配所有字符串了。如果是再去匹配所有的字符串那结果应该是

 

["d2""1""1"]这样才对。以前理解错误,这里写下。

 

 

 


分享到:
评论

相关推荐

    JavaScript正则表达式之后向引用实例代码

    贪婪、非贪婪与回溯PHP正则表达式的效率 回溯与固化分组正则表达式之回溯AS3 js正则表达式 反向引用(backreference)详解JavaScript正则表达式之分组匹配及反向引用php正则表达式的模式修正符和逆向引用使用介绍PHP...

    详解JavaScript正则表达式之分组匹配及反向引用_.docx

    详解JavaScript正则表达式之分组匹配及反向引用_.docx

    精通正则表达式基于.NET ASP PHP JSP JavaScript

    RegexApplication/Default.aspx 正则表达式类的应用 RegexApplication/GetPageHtmlData.aspx 获取网页的内容 第10章(/10/) ASPNETValidator/Compare.aspx 比较验证 ASPNETValidator/...

    xeger:反向正则表达式生成器

    反向正则表达式生成器 桑德·朗霍斯特(Sander Langhorst) 有没有想过哪种输入会与您的正则表达式匹配? 正则表达式网站很多,但基于正则表达式的输入示例并不多。 工作正在进行中 该项目仍在进行中。 全球进展: ...

    C# 最全的日期正则表达式,没有之一

    考虑到这个正则表达式仅仅是用作验证,所以捕获组没有意义,只会占用资源,影响匹配效率,所以可以使用非捕获组来进行优化。 ^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2...

    详解JavaScript正则表达式之分组匹配及反向引用

    语法 元字符:(pattern) 作用:用于反复匹配的...//该正则表达式有4个分组 //对应关系 //RegExp.$1 <-> (A+) //RegExp.$2 <-> ((B|C|D)+) //RegExp.$3 <-> (B|C|D) //RegExp.$4 <-> (E+) 以上的代码也同

    理解javascript正则表达式

    可以是任何简单或复杂的正则表达式,可以包含字符类,限定符,分组,向前查找,反向引用。 关于正则表达式中各种特殊字符(如 \,^,$,\w,\b 等)的含义可以参考 MDN 正则表达式-特殊字符 的整理。这里我们简单介绍一下...

    java 正则表达式

    下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为:字符 说明 \将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,“n”匹配字符“n”。“\n”匹配换行符。序列“\\”匹配“\”,“\(”...

    详解javascript 正则表达式之分组与前瞻匹配

    本文主要讲解javascript 的正则表达式中的分组匹配与前瞻匹配的,需要对正则的有基本认识,本人一直对两种匹配模棱不清。所以在这里总结一下,如有不对,还望大神指点。 1.分组匹配:  1.1捕获性分组匹配 ()  2.2...

    正则表达式30分钟入门教程

    • Javascript正则表达式在线测试工具 如果你不觉得正则表达式很难读写的话,要么你是一个天才,要么,你不是地球人。正则表达式的语法很令人头疼,即使对经常使用它的人来说也是如此。由于难于读写,容易出错,...

    JavaScript类型系统之正则表达式

     模式(pattern)部分可以是任何简单或复杂的正则表达式,可以包含字符串、限定类、分组、向前查找以及反向引用。每个正则表达式可以带一个或多个标志(flags),用以标明正则表达式的行为。正则表达式支持三个标志: ...

    正则表达式中的反向预搜索(下)

    在前面正则表达式中的反向预搜索中,在JavaScript中利用RegExp对象实现了正则表达式反向预搜索的字符串替换功能。

    JavaScript 正则应用详解【模式、欲查、反向引用等】

    本文实例讲述了JavaScript ...正则表达式语法:正则表达式语法 正则表达式语言:正则表达式语言 准备性的工作 在js中,如何写正则表达式。 /RegExp/ 在js里,用正则表达式来验证字符串是否满足, 使用 reg.test(str);

    PHP 正则表达式 推荐

    Δ 定界符 Δ 字符域 Δ 修饰符 Δ 限定符 Δ 脱字符 Δ 通配符(正向预查,反向预查) Δ 反向引用 Δ 惰性匹配 Δ 注释 Δ 零字符宽 定位 我们什么时候使用正则表达式呢?不是所有的字符操作都用正则就好了,php在...

    PHP正则表达式基础入门

    正则表达式,大家在开发中应该是经常用到,现在很多开发语言都有正则表达式的应用,比如JavaScript、Java、.Net、PHP 等,我今天就把我对正则表达式的理解跟大家唠唠,不当之处,请多多指教! 需要知道的术语——...

    还不会 JavaScript 中的正则表达式 ? 一篇文章带你轻松入门 !

    还不会 JavaScript 中的正则表达式 ? 一篇文章带你轻松入门 ! 文章目录还不会 JavaScript 中的正则表达式 ? 一篇文章带你轻松入门 !一、前言 :二、阅前须知 :三、步入正题1. 什么是正则 ?2. 怎么使用正则 ?-1). 正则...

    RegexKoans:使用Javascript和Jasmine编写的Ruby Koans风格的正则表达式教程

    Javascript的正则表达式引擎与许多其他编程语言非常相似。 它仅在深奥的细节上有所不同,并且不支持Lookbehind断言,因此本教程将不予介绍。 有关以及许多其他语言的的,Jan Goyvaerts是您的第一手资料,也是最后一...

    learn_js_regexp:基于示例的精通JavaScript正则表达式的指南

    JavaScript RegExp 基于示例的精通JavaScript regexp的指南。 书中还包括演习,以测试你的理解,这是一起呈现在本回购单个文件- 有关练习的解决方案,请参见 。 请参阅以跟踪对本书所做的更改。...分组和反向引用

    regulex:正则表达式很激动!

    是JavaScript正则表达式解析器和可视化器。 立即尝试: : 该项目正在重建中! 产品特点 用纯JavaScript编写。 无需后端。 您可以通过HTML iframe元素将图形嵌入自己的网站。 详细的错误消息。 在大多数情况下...

Global site tag (gtag.js) - Google Analytics