|
|
|
| суть в следующем. ессть примерно переменнаям таки срдержимым(в одну строку)
<table>
<tr> blablabla </tr>
<tr class=del> blablabla </td>
<tr> blablabla </tr>
<tr> blablabla </tr>
<tr> blablabla </tr>
</table>
|
т.Е. есть таблица, заданная html и требуется удалить средствами php (желательно с помошью ereg_replace) строку <tr class=del> blablabla </td>
Я пытался вот так:
$s=ereg_replace('<tr class=del>([[:print:]]+)</tr>','',$s);
|
Но вмечто того чтобы удалить все начиная с <tr class=del> по ближыйштй </tr> он удаляет по последний </tr>. Т.е. вместо того чтобы получить:
<table>
<tr> blablabla </tr>
<tr> blablabla </tr>
<tr> blablabla </tr>
<tr> blablabla </tr>
</table>
|
вместо этого я получаю:
<table>
<tr> blablabla </tr>
</table>
|
Как можно рушить эту проблему??? т.е. мне надо удалить всё начиная с <tr class=del> по ближайший </tr>
Спасибо! | |
|
|
|
|
|
|
|
для: SamProf
(18.10.2006 в 09:02)
| | Вроде бы удаляет так, как нужно ...
Но если все же нет, можно использовать preg_replace с модификатором жадности
$s=preg_replace('|<tr class=del>.*?</tr>|','',$s);
|
| |
|
|
|