x(?=y):匹配'x'仅仅当'x'后面跟着'y'.这种叫做先行断言。
(?<=y)x:匹配'x'仅当'x'前面是'y'.这种叫做后行断言。
x(?!y):仅仅当'x'后面不跟着'y'时匹配'x',这被称为正向否定查找。
(?<!y)x:仅仅当'x'前面不是'y'时匹配'x',这被称为反向否定查找。
例子:
匹配一个字符串表达式,前面的内容,涉及符号===,!==,==,!=
解析:
?=pattern :表示的是从其当前位置开始,预测后面的字符串必须匹配上pattern
^:匹配输入字符串的开始位置,除非在方括号表达式中使用,当该符号在方括号表达式中使用时,表示不接受该方括号表达式中的字符集合。要匹配 ^ 字符本身,请使用 \^。
*:匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。
例2:查找上面字符串后面对应的内容