有没有办法让 Perl 正则表达式搜索不区分大小写?

Is there a way to make Perl regex searches case-insensitive?

示例:

my $cities = qr/San Francisco|Los Angeles/;

标量 $cities 将匹配 San FranciscoLos Angeles 但不会匹配 SAN FRANCISCOLOS ANGELESsan franciscolos angeles。有没有办法让这些变量不区分大小写,而不必创建它们的大写版本?

my $cities = qr/San Fransisco|Los Angeles/i;

Perl regular expression modifiers

并不是您想让标量 $cities 不区分大小写,而是它引用的正则表达式。使用 /i 修饰符。

my $cities = qr/San Fransisco|Los Angeles/i;

您可能会发现阅读 Perl 正则表达式教程很有用:perldoc perlretut