|
|
|
|
|
для: SHAman
(19.10.2007 в 13:50)
| | Хех... Подумал "Это если таблиц вложенных нет..." и вспомнил, что когда-то писалось мной для "если таблицы вложеные есть" :)
<?php
$text = "........";
preg_match_all('#<td[^>]*>((((?!(<td[^>]*>|</td>)).)+)|(?R))*</td>#s', $text, $regs);
foreach($regs[0] as $val)
echo $val.str_repeat("\r\n", 5);
?>
|
Может быть, кому-нибудь будет интересно. | |
|
|
|
|
|
|
|
для: nill
(19.10.2007 в 00:59)
| | ([\w\s\d]*) исправить на (.*?) | |
|
|
|
|
|
|
| есть таблица примерно такого вида
HTML:
<table>
<tr><td>111</td>
<td>222</td><td>333</td>
<td>444</td>
</tr><tr><td>111</td>
<td>222</td><td>333</td><td>444</td>
</tr></</table>
каждую ячейку <td></td> в строке <tr></tr> надо записать в отдельное поле массива
preg_match_all('/<td>([\w\s\d]*)<\/td>/i', $text, $match, PREG_SET_ORDER);
вот что смог написать но оно работает не так как надо
как сделать чтобы в массив $match
строки разделялись<tr></tr>
да и если в <td></td> есть символ + то вся запись пропускаеться
как сделать чтобы любые символы не пропускались ([\w\s\d]*) неподходит | |
|
|
|
|