文字列内から正規表現がマッチした文字列を抽出して配列に入れる
文字列内を任意の正規表現でマッチさせ、そのマッチした文字列を配列に入れることができます。
サンプルソース(str2array.pl)
use strict; use warnings; $_ = '123abc567x8y9z0'; my @wk1 = /[0-9]+/g; print '対象文字列 ', $_, "\n"; print '抽出正規表現 ', '[0-9]+', , "\n"; print $wk1[0], "\n"; print $wk1[1], "\n"; print $wk1[2], "\n"; print $wk1[3], "\n"; print $wk1[4], "\n"; my $wk = $_; my @wka = $wk =~ /[a-z]+/g; print '抽出正規表現 ', '[a-z]+', , "\n"; print $wka[0], "\n"; print $wka[1], "\n"; print $wka[2], "\n"; print $wka[3], "\n";
実行結果
C:\Documents and Settings\test>str2array.pl 対象文字列 123abc567x8y9z0 抽出正規表現 [0-9]+ 123 567 8 9 0 抽出正規表現 [a-z]+ abc x y z