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

上传人:一** 文档编号:26169320 上传时间:2021-08-06 格式:DOCX 页数:5 大小:13.03KB
返回 下载 相关 举报
详解JavaScript正则表达式之分组匹配及反向引用__第1页
第1页 / 共5页
详解JavaScript正则表达式之分组匹配及反向引用__第2页
第2页 / 共5页
详解JavaScript正则表达式之分组匹配及反向引用__第3页
第3页 / 共5页
点击查看更多>>
资源描述
详解JavaScript正则表达式之分组匹配及反向引用_ 这篇文章主要介绍了详解JavaScript正则表达式之分组匹配及反向引用 的相关资料,需要的伴侣可以参考下 语法 元字符:(pattern)作用:用于反复匹配的分组 属性$1$9假如它(们)存在,用于得到对应分组中匹配到的子串 1或$1用于匹配第一个分组中的内容 2或$2用于匹配第一个分组中的内容 . 9或$9用于匹配第一个分组中的内容 用法示例 var reg = /(A+)(B|C|D)+)(E+)/gi;/该正则表达式有4个分组 /对应关系 /RegExp.$1 - (A+) /RegExp.$2 - (B|C|D)+) /RegExp.$3 - (B|C|D) /RegExp.$4 - (E+) 以上的代码也同时给出了$1$9的用法 $1$9是正则表达式预定义的静态属性,通过RegExp.$1引用 分组嵌套关系说明 上述代码也可以说明分组的嵌套关系 /测试环境 Chrome扫瞄器 var str = ABCDE; var reg = /(A+)(B|C|D)+)(E+)/gi; str.match(reg);/输出:ABCDE reg.exec(str,i);/输出:ABCDE, A, BCD, D, E RegExp.$1;/输出:A RegExp.$2;/输出:BCD RegExp.$3;/输出:D RegExp.$4;/输出:E 这样就可以很明白的看出分组的嵌套关系了 总结来说:大的分组中存在小的分组时,小的分组是排在该大分组后面的分组,以此类推 其次部分 这部分主要讲解类似于1这个东西的用法 分组匹配之反向引用 语法 元字符 19作用:用来表示前面以匹配的字符或分组的一个引用 用法示例 上面说的可能有些拗口,下面给一个例子: /一般状况,当我们想匹配任意两个相同的字符(简单一点就是两个相同的分组)时,往往可以借助下面的写法 /说明: /(w)用来匹配任何除了换行和制表符的字符, 而1是对(w)的一个引用, 所以你可以理解成: (w)1 就是(w)(w) /但是, /(w)1 和 (w)(w)的不同之处在于, (w)(w)表示任意两个连续的字符, 比如Ac, MM, K9, 都可以, / 但(w)1只能是AA, CC, 99 这样连续相同的字符 /所以, 你可以这样理解, 1 是对(w)的一个实例化引用, 当(w) 匹配到A时, 1 被表达成A, 当(w)匹配9时, 1 被表示成9 /说了这么多, 可能有些废话, 下面这个例子就很好理解了 var str = AA Am 99; var reg = /(w)1/g; str.match(reg);/输出: AA, 99 所以, 参照上边我所引用的文章中给出的 关键字搜索高亮显示的正则表达用法 的例子, 我给出自己改进的小的DEMO 虽然这个DEMO没有用到任何的关于反向引用的学问点:_: /测试环境 Chrome扫瞄器 var key = keywords;/搜索的关键字 var text = I am a text, and I have a keywords before this;/待匹配的文本 var reg = new RegExp(+key+),g); text.replace(reg,span style=color:red$1/span);/输出: I am a text, and I have a span style=color:redkeywords/span before this 下面给大家具体介绍下正则表达式之反向引用 示例1: public static void main(String args) String s=99-3933; boolean b=Pattern.matches(d)1-(3)122, s); System.out.println(b); 反向引用,匹配重复的数字 (d)=1 (3)=2 示例2: public class test public static void main(String args) String s=99-393399-3933; boolean b=Pattern.matches(d)2-(3)232)1, s); System.out.println(b); .
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!