首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

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

2013-01-06 
perl如何只保留第一次匹配到的内容比如 $line abc_123_strif($line ~ /(.*)_(.*)/)会将abc_123放在$1

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

[解决办法]

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

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

热点排行