Локальные модификаторы в RegEx — используй кластер, Люк
В жизни каждого программиста наступает момент, когда ему надо выцепить кусок текста, независимо от регистра — но в контексте зависимого от регистра текста.
На помощь приходят локальные модификаторы — например, — в пределах кластера это будет так:
-bash-3.2$ perl -le ‘my $x = «Abc»; print «ok» if $x =~ /(?i:a)b/;’
ok
-bash-3.2$ perl -le ‘my $x = «Abc»; print «ok» if $x =~ /(?i:a)B/;’
-bash-3.2$
ну или так
-bash-3.2$ perl -le ‘my $x = «Abc»; print «ok» if $x =~ /(?-i:A)b/i;’
ok
-bash-3.2$ perl -le ‘my $x = «Abc»; print «ok» if $x =~ /(?-i:A)B/i;’
ok
-bash-3.2$ perl -le ‘my $x = «Abc»; print «ok» if $x =~ /(?-i:a)B/i;’
-bash-3.2$