读书人

perl怎么只保留第一次匹配到的内容

发布时间: 2013-01-06 15:44:47 作者: rapoo

perl如何只保留第一次匹配到的内容
比如 $line = "abc_123_str"
if($line =~ /(.*)_(.*)/)
会将abc_123放在$1中,但是我只想要abc,怎么办

[解决办法]

$line =~ /(.*?)_(.*)/

[解决办法]
匹配优先量词:*、+、?、{ m, n }
忽略优先量词:*?、+?、??、{ m, n }?
占有优先量词:*+、++、?+、{ m, n }+
[解决办法]
$line =~ m/(.*)_(.*_)+/;

读书人网 >perl python

热点推荐