sironeko12回答ポイント なしウォッチ

PHPのpreg_match_allで、正規表現チェッカーとEclipseの結果が異なりうまくいかなく困ってます


HTMLの<table>内の<tr><td>から必要な情報を取得したいのですが、
正規表現チェッカーでは正しい結果が 2次元配列に繰り返しで入るのですが、
Eclipseでは、全体がarray[0][0]にマッチしてしまい、array[1][0]、array[2][0]... は最終行しか取れてない状況です。

元データ

<tr class="a"><td class="b">1</td><td class="c">1</td><td class="d"><a href="test1">test1</a></td><td class="e">1</td><td class="f"><a href="test1">test1</a></td></tr>
<tr class="a"><td class="b">2</td><td class="c">2</td><td class="d"><a href="test2">test2</a></td><td class="e">2</td><td class="f"><a href="test2">test2</a></td></tr>
<tr class="a"><td class="b">3</td><td class="c">3</td><td class="d"><a href="test3">test3</a></td><td class="e">3</td><td class="f"><a href="test3">test3</a></td></tr>


正規表現

preg_match_all('@<tr.*><td.*>(.*)<\/td><td.*>(.*)<\/td><td.*>(<a.*>.*<\/a>)<\/td><td.*>(.*)<\/td><td.*>(<a.*>.*<\/a>)<\/td><\/tr>@', $html, $matches);


htmlは mb_convert_encodingでUTF-8に変更してから、改行、タブを削除してます。

どなたかわかる方いらっしゃいましたらご教授お願いします。

ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

コメントはありません

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

質問の情報

登録日時
2017-08-19 11:56:53
終了日時
2017-08-20 14:09:53
回答条件
1人10回まで

この質問のカテゴリ

この質問に含まれるキーワード

正規表現647eclipse379SJIS223PHP7798UTF-8628HTML5036配列924

人気の質問

メニュー

PC版