当前位置: 代码网 > it编程>编程语言>正则表达式 > 正则表达式之分组的回溯引用问题

正则表达式之分组的回溯引用问题

2024年05月19日 正则表达式 我要评论
正则表达式简介正则表达式,又称规则表达式。(英语:regular expression,在代码中常简写为regex、regexp或re),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某

正则表达式简介

正则表达式,又称规则表达式。(英语:regular expression,在代码中常简写为regex、regexp或re),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

引子

前端开发中,难免会遇到需要匹配标签的需求,这么简单的需求,不就是两个尖括号包裹一个标签名嘛,接下来一顿操作,/<[\w]+>.*<\/[\w]+>/g,然后完美匹配了 <div>xx</div> 等内容,需求完成…

等等,咋看之下,当前正则确实能匹配各种标签,但是它同样能匹配类似 <div>xx</p> 的内容。这就意味着我们需要保持两个尖括号内的内容相同才行。

正则之分组回溯引用 分组 ()

所谓分组,就是把要匹配的内容放在括号()里。括号里的内容可以视为是一个整体的子表达式

/<([\w]+)>.*<\/([\w]+)>/g

回溯引用 \n

正则表达式还提供了一种引用之前匹配分组的机制,有些时候,我们或许会寻找到一个子匹配,该匹配接下来会再次出现。

// 该表达式中的 \1 就是整个表达式中的第一个分组
var reg = /<([\w]+)>.*<\/\1>/
reg.test('<div>xx</div>') // true
reg.test('<div>xx</p>') // false

到此这篇关于正则表达式之分组的回溯引用问题的文章就介绍到这了,更多相关正则表达式回溯引用内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com