Perlについての質問箱 46箱目
■ このスレッドは過去ログ倉庫に格納されています
0026デフォルトの名無しさん
2011/02/15(火) 13:22:45マッチするようにしたいです。
例えば正規表現で表現すると
"あさ/"と入力されたら/[あアアぁァァ][さササ][//]/でマッチを取るように。
#そのまま書くと下記のようなイメージ
use utf8;
use open IO => ":encoding(sjis)";
$input= shift; #入力は"あさ/","アサ/","アサ/","ァサ/"などの場合、出力は全て同じ結果になるように
#【A】単純に置換
$input =~ /[あアアぁァァ]/\[あアアぁァァ\]/g; #iオプションをつければ小文字はいらなくなる??
$input =~ /[AAaa]/\[AAaa\]/g;
$input =~ /[/\/]/\[/\/\]/g;
$input =~ /[.\./]/\[.\.\]/g;
〜
〜
open(IN,"a.txt");
while(<IN>){
print "$_" if(/$input/);
}
close(IN);
さすがにこれは置換の行が増えすぎてナンセンスだと思うので、
何かスマートな方法もしくはモジュールなどありますでしょうか?
■ このスレッドは過去ログ倉庫に格納されています