Perl中有match操作符的一个简单版本- ?PATTERN?运算符。这与m //运算符基本相同,除了它在每次调用重置之间搜索的字符串内仅匹配一次。
例如,您可以使用它来获取列表中的第一个和最后一个元素-
#!/usr/bin/perl
@list = qw/food foosball subeo footnote terfoot canic footbrdige/;
foreach (@list) {
$first = $1 if /(foo.*?)/;
$last = $1 if /(foo.*)/;
}
print "First: $first, Last: $last\n";执行以上程序后,将产生以下结果-
First: foo, Last: footbrdige