次のようなファイルから、少数の部分だけを取り出してリストにするにはどうすればよいですか?
(1:0,2:0.001336,((((3:0.002674,4:0,25:0,26:0,50:0):0.001334,5:0.005347, ...
ここから
(0.001336, 0.002674, 0.001334, 0.005347, ...)
というリストを得たいです。
よろしくお願いします。
正規表現のマッチを配列コンテキストで受けるとマッチした部分のリストになるので、
my $str = "(1:0,2:0.001336,((((3:0.002674,4:0,25:0,26:0,50:0):0.001334,5:0.005347, ..."; my @array = $str =~ /(\d\.\d+)/g;
でどうでしょう。
ありがとうございました。~/ / でマッチした部分のリストを返してくれるんですね。勉強になりました。