10.配列解析プロジェクト10-2.正規表現のいろいろ■ メタ文字のいろいろ
使用例) タブによって、2個の要素のスプリットされます。
@a = split(/\t/, "This is a pen.\tThis is a notebook.");
空白とタブによって、8個の要素のスプリットされます。
@a = split(/\s/, "This is a pen.\tThis is a notebook.");
■ 量指定子
使用例)
if ($word =~ /[a-z]{5}/)
{ print "小文字のアルファベットが5文字連続している箇所が含まれます!\n"; }
if ($word =~ /(じゃ)+ーん/)
{ print "「じゃーん」か「じゃじゃーん」、「じゃじゃじゃーん」などが含まれるぞ\n"; } ■ 文字列の置換
最初にマッチした文字列のみを置換します。
$word = "This is a pen. That is a pencil."
$word =~ s/pen/eraser/; print "$word\n";
This is a eraser. That is a pencil.
マッチした文字列すべてを置換します。
$word = "This is a pen. That is a pencil."
$word =~ s/pen/eraser/g; print "$word\n";
This is a eraser. That is a erasercil.
マッチした文字列は、Perlが勝手に作る変数$1、$2、$3に代入されてますので、
それを利用すると次のようなことができます。
$word = "0426919326"
$word =~ s/(\d\d\d)(\d\d\d)(\d\d\d\d)/$1-$2-$3/; print "$word\n";
042-691-9326
|