3.2.2.2 后向引用

Posted avention

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.2.2.2 后向引用相关的知识,希望对你有一定的参考价值。

    BRE 提供一种叫后向引用的机制,指的是“匹配于正则表达式匹配的先前的部分”。使用后向引用的步骤有两个。第一步是将子表达式包围在 ( 与 ) 里;单个模式里可包括之多9个子表达式,且可为嵌套结构。
 
    下一步是在同一模式之后使用digit,digit指的是介于1至9的数字,指的是“匹配于第n个先前方括号内子表达式匹配成功的字符”
 
模式 匹配成功
(ab)(cd)[def]*21 abcdcdab、abcdeeecdab、adcddddeeffcdab、...
(why).*1 一行里重现两个why
([[:alpha:]_][[:alnum:]_]*) = 1 简易C/C++赋值语句
    后向引用在寻找重复字以及匹配引号时特别好用:   (["‘]).*1   匹配以单引号或双引号括起来的字,例如 ‘foo‘  或 "bar"。在这种方法下,就无需担心是单引号或是双引号先找到。
 
    

以上是关于3.2.2.2 后向引用的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式中圆括号的用法--也叫后向引用

正则表达式中的后向引用

Java String.replaceAll() 与后向引用(backreference)

python正则表达式--分组后向引用前(后)向断言

sed后向引用取行及awk取列

正则表达式之基础