2013年3月19日火曜日

連続する文字に一致させる

AAやBB等、同じ文字が連続する場合に一致させるには、正規表現の後方参照を使います。
後方参照とは、括弧の中にマッチしたテキストを表します。
例えば、\1は最初に一致した括弧の文字を表し、\2は2番めに一致した括弧の文字を表します。


my @strings = (

"すす、好きです",
"あ、愛してる",
"ABBA",
"Change");

foreach my $aStr(@strings) {
if ($aStr=~/(\S)\1/) {
print "$aStr\n";
}
}



上記では、スペース以外の文字を表す\Sを括弧でくくり、後方参照\1で一致した括弧の文字と一致するかをチェックすることで文字の連続をチェックしています。

結果は以下のようになります。

すす、好きです
ABBA



0 件のコメント:

コメントを投稿