ruby中正则表达式最小匹配与最大匹配

作者: 张飞_
发布时间:2015-07-13 11:25:42

正则表达式中,默认的是最大匹配,即贪婪模式,但有些时候,要最小匹配,

请看下面的例子:(ruby)

str = "abbbbbdwwdwwwede"
puts str[/a.*(dw)/]

结果为:abbbbbdwwdw

str = "abbbbbdwwdwwwede"
puts str[/a.*?(dw)/]

结果为:abbbbbdw

即在需要最小匹配的字符前面加上?,就变成了最小匹配了,即非贪婪模式。

来源:http://www.cnblogs.com/zhangfei/archive/2012/04/20/2458700.h

推荐: