正则指引-断言

正则表达式中的大多数结构匹配的文本会出现在匹配的结果中,但是有时候不但关心目标文本的匹配,

还要判断目标文本左右两侧的文本是否符合要求,这种要求的正则里叫做断言。

常见的断言有三类:单词边界、行的起始、结束的位置、环视。
单词边界:正则记着:\b,它匹配“单词边界”的位置。
使用情况:
           \bword\b   \bword    word\b
aword                                success
awords
words                   success
word     success    success   success

\B是非单词边界。

行起始、结束位置在正则表达式中,这类匹配位置的元素叫做锚点,用来定位的,

常用的锚点还有^和$,,分别匹配字符串的开始和结束的位置,如果匹配模式是多行的时候,

他们还可以匹配每一行的开始和结束位置。使用表达式:(?m)^...$
所以在多行模式时,匹配整段文本的开始和结束位置需要其他的方式,他们是\A和\Z

环视:之前介绍边界匹配,它是完成这样的判断,在某个位置向左向右看,必须出现和必须不出现某些字符,这种功能在正则里面叫做环视。
正则使用:

(?!...)  是指当前位置之后,不容许出现能匹配的字符
(?<!...) 是指当前位置之前,不容许出现能匹配的字符
(?=...)  是指当前位置之后,容许出现能匹配的字符
(?<=...) 是指当前位置之前,容许出现能匹配的字符

在正则中还可以选择匹配模式,一般常见的匹配模式:不分大小写模式、单行模式、多行模式、注释模式
使用:
不分大小写模式(?i)
单行模式(?s)
多行模式(?m)
注释模式(?x)

posted @ 2012-11-07 09:04  八神吻你  阅读(1089)  评论(1编辑  收藏  举报