NilovSerge
Новичок
Выдрать содержимое ячеек из таблиц используя preg_match_all
Всем привет
У меня есть кусок html-я с несколькими таблицами Мне надо из таблиц у которых class="Table_1" выбрать содержимое ячеек
$html= '<table class="Table_1" border= 0 width=" 100%">
<tr> <td width=" 17%" align= center>AAA111_111 </td> <td width=" 17%" align= center>AAA111_222 </td> </tr>
<tr> <td width=" 17%" align= center>AAA222_111 </td> <td width=" 17%" align= center>AAA222_222 </td>
</tr>
</table> 333333333
<table class="Table_2" border= 0 width=" 100%">
<tr> <td width=" 17%" align= center>BBB111_111 </td> <td width=" 17%" align= center>BBB111_222 </td> </tr>
<tr> <td width=" 17%" align= center>BBB222_111 </td> <td width=" 17%" align= center>BBB222_222 </td>
</tr>
</table> XXXXX...
<table class="Table_1" border= 0 width=" 100%">
<tr> <td width=" 17%" align= center>CCC111_111 </td> <td width=" 17%" align= center>CCC111_222 </td> </tr>
<tr> <td width=" 17%" align= center>CCC222_111 </td> <td width=" 17%" align= center>CCC222_222 </td>
</tr>
</table> wwwwww';
Пытаюсь делать так:
$Pattern= "/<table class=\"Table_1\"[^>]+>" . "([\S\s]*)". "<\/table>/i";
$Ret= preg_match_all($Pattern, $html, $A);
И я получаю кусок кода от первого "<table" до последнего "</table>" а не массив из первой и 3й таблиц Видимо неправильно
задано условие текста между тегами таблицы "([\S\s]*)"... А как правильно?
Всем привет
У меня есть кусок html-я с несколькими таблицами Мне надо из таблиц у которых class="Table_1" выбрать содержимое ячеек
$html= '<table class="Table_1" border= 0 width=" 100%">
<tr> <td width=" 17%" align= center>AAA111_111 </td> <td width=" 17%" align= center>AAA111_222 </td> </tr>
<tr> <td width=" 17%" align= center>AAA222_111 </td> <td width=" 17%" align= center>AAA222_222 </td>
</tr>
</table> 333333333
<table class="Table_2" border= 0 width=" 100%">
<tr> <td width=" 17%" align= center>BBB111_111 </td> <td width=" 17%" align= center>BBB111_222 </td> </tr>
<tr> <td width=" 17%" align= center>BBB222_111 </td> <td width=" 17%" align= center>BBB222_222 </td>
</tr>
</table> XXXXX...
<table class="Table_1" border= 0 width=" 100%">
<tr> <td width=" 17%" align= center>CCC111_111 </td> <td width=" 17%" align= center>CCC111_222 </td> </tr>
<tr> <td width=" 17%" align= center>CCC222_111 </td> <td width=" 17%" align= center>CCC222_222 </td>
</tr>
</table> wwwwww';
Пытаюсь делать так:
$Pattern= "/<table class=\"Table_1\"[^>]+>" . "([\S\s]*)". "<\/table>/i";
$Ret= preg_match_all($Pattern, $html, $A);
И я получаю кусок кода от первого "<table" до последнего "</table>" а не массив из первой и 3й таблиц Видимо неправильно
задано условие текста между тегами таблицы "([\S\s]*)"... А как правильно?