(?=pattern)
(?!pattern)
(?<=pattern)
(?<!pattern)
这样的一对括号,可以看作一个插在字符间的光标,括号里的内容用来限制光标的位置。
如(?=word),满足这个条件的光标右侧就是"word"。
对于字符串 word123word456word 来说,这个光标就可以插在三个word之前。
所以,/.(?=word)/ 匹配3和6,/(?=word)./ 匹配三个w。
(?=pattern)
(?!pattern)
(?<=pattern)
(?<!pattern)
这样的一对括号,可以看作一个插在字符间的光标,括号里的内容用来限制光标的位置。
如(?=word),满足这个条件的光标右侧就是"word"。
对于字符串 word123word456word 来说,这个光标就可以插在三个word之前。
所以,/.(?=word)/ 匹配3和6,/(?=word)./ 匹配三个w。