标签:com 正则表达 一个 文本 位置 code 地方 环视 多重判断
??环视有一个很重要的玉兔,就是避免编写正则表达式“牵一发动全身”的尴尬——既可以集中关注某个地方,添加全局性的限制,又不会干扰其他部分的匹配。有些时候,为进行全局性限制而真正匹配文本,会让情况变复杂。
??环视结构也要用到括号,这种括号是否会影响到分组编号呢?
??前面说过,分组的编号只与捕获型号有关,而不受其他任何类型括号的影响。所以,环视结构虽然出现了括号,但并不影响分组。注:环视结
?? PHP 对逆序环视中表达式中的限制要宽松一点,它能匹配文本的长度可以不必限定,但是长度必须是确定的数值:(?<=dog|cats)
是没有问题,因为两个分支的长度都是固定的;而(?<!dogs?|cats?)
则有问题,因为两个分支的长度都是不确定的。
?? 环视匹配的并不是字符,而是位置。在正则表达式匹配时,环视结构匹配成功,并不会更改“当前位置”,所以多个环视可以组合在一起,实现在同一个位置的多重判断。
标签:com 正则表达 一个 文本 位置 code 地方 环视 多重判断
原文地址:https://www.cnblogs.com/gaara0305/p/10096331.html