※ ChatGPTを利用し、要約された質問です(原文:正規表現でのマッチを複数取得したい)
正規表現でのマッチを複数取得したい
このQ&Aのポイント
正規表現にて、文字列のhtmlタグ部のみを配列にして取得したいのですが、初めにマッチする1つしか返り値を取得できません。
preg_match関数を使用してマッチした後も続けて検索するためには、オプション'g'を使うことができますが、エラーが出てしまいます。
解決策をご存じの方はいらっしゃいませんか?ご教示いただけると幸いです!
正規表現にて、文字列のhtmlタグ部のみを配列にして取得したいのですが、初めにマッチする1つしか返り値を取得できません。
----ソース---------------------
$this->target_str <<<EOS
<test1>aaa</test1>
<test2>bbb</test2>
EOS;
preg_match ( "/<.*?>/imsu" , $this->target_str, $RES_ARR );
-------------------------------
上の例だと、
$RES_ARR[0] => "<test1>"
となり、残りのタグは取得できないのです。
google検索にて発見した、'マッチした後も続けて検索する'というオプション'g'をつけてみたのですが、'g'に対してエラーが出てしまいます。
どなたか解決策をお持ちの方いらっしゃいましたらよろしくお願いします!