- ベストアンサー
複数回のパターンマッチ
どうしても複数回のパターンマッチで値が取得できません。 すべてを配列などに代入したのですがどうすればよいのでしょうか? 下記のような感じです。 $str = <<EOF <a>dasfdaf</a><br> asfdafdsa sfatyuytu <a>jkytr</a><br> gjetjt tyurtyu EOF ; if ($str =~ /<a>(.*)<\/a><br>/g) { @list = $1; } よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
次のような方法で、1度に処理することができます。 @list = ($str = <<EOF) =~ /<a>(.*)<\/a><br>/g; # ; は EOF の次の行でも可 ・・・ EOF または、 @list = ($str = <<EOF) ・・・ EOF =~ /<a>(.*)<\/a><br>/g;
その他の回答 (1)
- Werner
- ベストアンサー率53% (395/735)
回答No.1
@list = ($str =~ /<a>(.*)<\/a><br>/g); もしくは while ($str =~ /<a>(.*)<\/a><br>/g) { push (@list, $1); }