phpの正規表現についてのメモ書きです。
ある文字列の中に検索したい文字列が複数あり、これら全て正規表現で抽出したい場合は
preg_match_all()を使います。
例えば、htmlファイルに
<div class="hogeClass">value1</div>
という<div class="hogeClass">タグが複数あり、
<div class="hogeClass">タグ内の文字列を全部抽出したい場合は
下のようなコードで全て表示できます。
if( preg_match_all( "/<div class=\"hogeClass\">(.*)<\/div>/", $testHtml, $arrMatch ) ){
foreach( $arrMatch[1] as $value ){
echo $value . "\n";
}
}
(*testHtmlは正規表現で調べたいhtml文字列です。)
$arrMatch[1]に配列として格納されているわけです。