正则表达式之<七>回溯引用:前后一致
发布时间:2020-12-14 02:21:10 所属栏目:百科 来源:网络整理
导读:子表达式是为了把一组字符编组为一个字符集合,回溯引用是针对于子表达式来的。 场景: 有这样一个文本: BODY H1 content H1 test /H1 BR content BR test /BR H2 content H1 test /H2 H3 content H1 test /H4 /BODY 假设正则如下: [Hh][0-6].*?/[Hh][0-6] 匹
子表达式是为了把一组字符编组为一个字符集合,回溯引用是针对于子表达式来的。
场景: 有这样一个文本: <BODY> <H1> content H1 test </H1> <BR> content BR test </BR> <H2> content H1 test </H2> <H3> content H1 test </H4> </BODY> 假设正则如下: <[Hh][0-6]>.*?</[Hh][0-6]> 匹配结果如图: 很明显这不是我们想要的结果因为<H3> content H1 test </H4>这是一条非法的数据,不应该匹配。 所以采用([0-6])作为一个组。 正则表达式为: <[Hh]([0-6])>.*?</[Hh]1> 这里的1就表示引用上一次组里的数据,保持数据一致。 匹配结果如图: 1代表什么意思呢? 它代表着模式里的第一个子表达式,2代表着第二个子表达式,3代表第三个,以此类推。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |