例1:如果字符串New World后是Symphony 或 Dictionary 字符串New World将匹配, 但第三个单词不是匹配内容的一部分:

s1=
"New World Dictionary"

s2=
"New World Symphony"

s3=
"New World Order"

reg=/New World (?=Dictionary|Symphony)/

m1=reg.match(s1)

m2=reg.match(s2)

m3=reg.match(s3)

p m1[0]

p m2[0]

p m3
"New World "
"New World "
nil
负预查示例:

s1=
"New World Dictionary"

s2=
"New World Symphony"

s3=
"New World Order"

reg2=/New World(?! Symphony)/

m1=reg2.match(s1)

m2=reg2.match(s2)

m3=reg2.match(s3)

m1.to_a

m2.to_a

m3.to_a

puts m1, m2, m3
New World
nil
New World
在上例中,仅当字符串New World 后面没有Symohony时才匹配
本文转自 fsjoy1983 51CTO博客,原文链接:http://blog.51cto.com/fsjoy/68526,如需转载请自行联系原作者