如何检查aaa或aab或Perl字符串?

时间:2010-10-17 18:19:09

标签: perl

如果我想检查字符串是包含aaa还是aab还是a?

,有人能告诉我在绑定表达式中需要写什么模式吗?
$str = "Hello how are aaa you?";
print $str =~ m/what should i write here?/;

4 个答案:

答案 0 :(得分:8)

$str =~ /a|aaa|aab/

您可能需要查看regular operator precedence,以确保不会被/^foo|bar$/(匹配^foobar$等问题所困,与{{1 }})。

答案 1 :(得分:6)

$str =~ /a/

(考虑一下......)

答案 2 :(得分:3)

(aaa|aab|a) ...

答案 3 :(得分:0)

鉴于mscha的观点(回答不评论)我想知道你是否真的想要匹配并保持。如果你想知道你发现了什么,尝试捕获一个数组的全局匹配。

#!/usr/bin/perl

use strict;
use warnings;

my $str = "Hello how are aaa you?";
my @found = $str =~ m/(aaa|aab|a)/g;
foreach my $result (@found) {
  print "found $result\n";
}