正则表达式扩展语法:预搜索

作者:vkvi 来源:ITPOW(原创) 日期:2008-11-18

预搜索(零宽度断言)

判断当前位置的前后字符,是否符合指定的条件,但不匹配前后的字符。

表达式 方向 说明
(?=xxx) 正向预搜索(向右) 正向预搜索,判断当前位置右侧是否能匹配指定表达式。
(?!xxx) 正向预搜索否定,判断当前位置右侧是否不能够匹配指定表达式。
(?<=xxx) 反向预搜索(向左) 反向预搜索,判断当前位置左侧是否能够匹配指定表达式。
(?<!xxx) 反向预搜索否定,判断当前位置左侧是否不能够匹配指定表达式。

上面第一、第三个表达式又称为“正向零宽度断言”,其中“=”表示肯定。

上面第二、第四个表达式又称为“负向零宽度断言”,其中“!”表示否定。

举例

cftea 的域名是 www.itpow.com。

正则表达式 cftea 匹配两个 cftea

正则表达式 (?<!.)cftea 匹配第一个 cftea

正则表达式 (?<=.)cftea 匹配第二个 cftea

相关文章