大文字小文字を区別しない
iオプションを使います。
use strict;
use warnings;
foo('from aaa');
foo('From bbb');
foo('FROM ccc');
foo('form ddd');
sub foo {
my $val = shift;
print "[$val]\n";
if ($val =~ m/^from/i) {
print " match a\n";
}
if ($val =~ m/^from/) {
print " match b\n";
}
}
実行結果です。
[from aaa]
match a
match b
[From bbb]
match a
[FROM ccc]
match a
[form ddd]
正規表現中に(?i)と書く方法もあります。
use strict;
use warnings;
foo('from aaa');
foo('From bbb');
foo('FROM ccc');
foo('form ddd');
sub foo {
my $val = shift;
print "[$val]\n";
if ($val =~ m/(?i)^from/) {
print " match a\n";
}
if ($val =~ m/^from/) {
print " match b\n";
}
}
実行結果です。
[from aaa]
match a
match b
[From bbb]
match a
[FROM ccc]
match a
[form ddd]
関連項目
・mマッチ演算子・s置換演算子
・大文字小文字変換
