|
|
|
| Есть например строка
<TABLE><TABLE>1234122</TABLE></TABLE>
и рег. выражение
<TABLE>.*</TABLE>
результат работы:
вся строка,
а хотелось бы вложенное получить:
<TABLE>1234122</TABLE>, ну или оба разом
P.S. с рег. выражениями работаю неделю, поэто извеняюсь если глупость спрашиваю, просто с такой вот проблемой столкнулся | |
|
|
|
|
|
|
|
для: johnn06
(05.04.2007 в 16:29)
| | Если стоит задача удалить вложенные теги table, то это делается немного не так. Нужно в цикле прогонять строку и заменять
"<TABLE><TABLE>(.*?)<\/TABLE><\/TABLE>"
на
"<TABLE>$1</TABLE>"
Если стоит задача просто выгрести из тега TABLE все содержимое, то делаем то же самое, но не в цикле и не заменяем ничего. Просто достаточно прогнать на соответствие preg_match. Нужный кусок строки окажется в переменной $1. | |
|
|
|
|
|
|
|
для: SHAman
(05.04.2007 в 17:03)
| | спасибо, ща попробую (на самом деле это 2 вариант) | |
|
|
|
|
|
|
|
для: johnn06
(05.04.2007 в 16:29)
| | На всякий случай: регулярные выражения в принципе не разбирают рекурсивно определенные структуры общего вида. Можно извращаться со случаями ограниченной вложенности, хотя это та еще радость. | |
|
|
|
|
|
|
|
для: Trianon
(05.04.2007 в 17:08)
| | Спасибо, буду иметь ввиду, потому что в моем случае вложеность может быть заранее неизвестна. тогда буду извращатся на уровне языка вытаскивая подвыражения... | |
|
|
|
|
|
|
|
для: johnn06
(05.04.2007 в 17:11)
| | В Вашем случае, вероятно, xml_parse может поспособствовать.
Если заинтересует, недавно проходило несколько тем, посвященных разбору XML и RSS (автор 1999) - там рассматривались некоторые моменты. | |
|
|
|
|
|
|
|
для: Trianon
(05.04.2007 в 17:12)
| | а ссылочку на электронные материалы можно? хотелось бы ознакомится... | |
|
|
|