|
0 Всего найдено: 6
tigr1945
Сообщение
03/07/2010 11:57
Копия темы
вопрос по регулярке есть таблица мне нужно получить из нее все tr строки #<tr[^>]*>(.+?)</tr>#si но проблема в том что в последнем td этой строки есть другая таблица, и регулярка останавливается на внутренним /tr table tr td 1 /td td 2 /td td table tr td 3 /td /tr /table /tr tr td 1 /td td 2 /td td table tr td 3 /td /tr /table /tr /table
idle
Сообщение
03/07/2010 16:27
Копия темы
Я плохо знаю пхп, но обычно в регулярках за это отвечает ключ g. В конце поменяйте si на sig.
RiDDi
Сообщение
03/07/2010 19:24
Копия темы
А в чем вопрос-то? ) Вы же до tr ищите он и выводит до tr ) Или вопрос "как искать до tr, но чтобы выводило не до tr"? ))
tigr1945
Сообщение
03/07/2010 20:38
Копия темы
внутри td есит другая таблица а в ней есть /tr так вот он останавливается на ней а должен остановится на внешней строке а не на внутренней строке которая между td /td
RiDDi
Сообщение
04/07/2010 05:16
Копия темы
0
Владимир, он должен остановится на первом же tr. Что он и делает. У вас изначально неверное условие. И соответственно вам подсказать тут никто не может, потому что нет условия задачи. Ну например можно опережающей проверкой проверять, что перед tr не стоит /td table при условии, что во вложенной таблице одна tr-ка Или по содержимому заделать символьный перебор если внутри не html Если html можно предварительно обработать данные убрав все таги кроме tr и дальше выбирать по ^< В общем вариантов множество. Нужно четкое условия какой контент в каком контексте и какие символы где. |
Выразить восторг, поругаться или предложить что-нибудь можно на форуме |
Для обсуждения этого сервиса так же есть темы на фрилансе по поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал" |