PHPの正規表現について教えてください。


preg_match_allでtdタグに囲まれた内容をすべて抽出するためにはどう書けばいいのでしょうか。
id、class、styleなどが含まれている場合と含まれていない場合もあるので両方にマッチする書き方を教えてください。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/07/09 03:08:30
  • 終了:2011/07/12 09:15:55

回答(2件)

id:Cherenkov No.1

Cherenkov回答回数1502ベストアンサー獲得回数4922011/07/09 03:43:05

ポイント50pt
<?php
$sampleHTML = <<< EOT
<table border=4 width=250 align=center>
 <caption>【テーブルの例】</caption>
 <tr bgcolor="#cccccc">
  <th><br></th>
  <th>-A</th>
  <th>-B</th>
  <th>-C</th>
 </tr>
 <tr align=center>
  <td>-1</td>
  <td>A1</td>
  <td>B1</td>
  <td rowspan=2>C1-C2</td>
 </tr>
 <tr align=center>
  <td>-2</td>
  <td>A2</td>
  <td>B2</td>
 </tr>
 <tr align=center>
  <td>-3</td>
  <td>A3</td>
  <td colspan=2>A3-B3</td>
 </tr>
</table>
EOT;
echo $sampleHTML;
preg_match_all('/<td.*?>(.*?)<\/td>/iu', $sampleHTML, $out);
echo '<br>';
foreach($out[0] as $str) {
	var_dump($str);
}
?>
id:km1981 No.2

km1981回答回数429ベストアンサー獲得回数492011/07/09 20:29:57

ポイント50pt

このパターンで取り出せると思います

日本語はUTF-8で書いてくださいね

/<td[^>]*>([^<]*)<\/td>/iu

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません