码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式——断言补充

时间:2018-12-10 15:48:47      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:com   正则表达   一个   文本   位置   code   地方   环视   多重判断   

4.4 补充

4.4.1 环视的价值

??环视有一个很重要的玉兔,就是避免编写正则表达式“牵一发动全身”的尴尬——既可以集中关注某个地方,添加全局性的限制,又不会干扰其他部分的匹配。有些时候,为进行全局性限制而真正匹配文本,会让情况变复杂。

4.4.2 环视与分组编号

??环视结构也要用到括号,这种括号是否会影响到分组编号呢?

??前面说过,分组的编号只与捕获型号有关,而不受其他任何类型括号的影响。所以,环视结构虽然出现了括号,但并不影响分组。注:环视结

4.4.3 环视的支持程度

??php

?? PHP 对逆序环视中表达式中的限制要宽松一点,它能匹配文本的长度可以不必限定,但是长度必须是确定的数值:(?<=dog|cats)是没有问题,因为两个分支的长度都是固定的;而(?<!dogs?|cats?)则有问题,因为两个分支的长度都是不确定的。

4.4.4 环视的组合

?? 环视匹配的并不是字符,而是位置。在正则表达式匹配时,环视结构匹配成功,并不会更改“当前位置”,所以多个环视可以组合在一起,实现在同一个位置的多重判断。

  • 环视中包含环视
  • 并列多个环视
  • 环视作为多选分支

技术分享图片
技术分享图片
技术分享图片
技术分享图片

正则表达式——断言补充

标签:com   正则表达   一个   文本   位置   code   地方   环视   多重判断   

原文地址:https://www.cnblogs.com/gaara0305/p/10096331.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!