3.2.2.2 后向引用

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