URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7529
[ Назад ]

Исходное сообщение
"Регулярные выражения, как вырезать теги"

Отправлено Кузя , 07-Авг-08 14:19 
для вырезания тега < > можно использовать <[^>]*> а как вырезать тег (( )) ?

Содержание

Сообщения в этом обсуждении
"Регулярные выражения, как вырезать теги"
Отправлено Аноним , 08-Авг-08 08:25 
>для вырезания тега < > можно использовать <[^>]*> а как вырезать тег (( )) ?

могу предложить \(\(.*?\)\)

но это лишь чуть лучше вашего решения.
протестируйте ваш регексп на конструкциях:
"<a>слово</a>" и
"<img src="img.png" alt=">">"
я бы сказал, что он никуда не годится (как и мой :-))


"Регулярные выражения, как вырезать теги"
Отправлено anonymous , 10-Авг-08 20:24 
Никогда не юзайте регекспы для парсинга HTML-я (удаление тегов это частный вид парсинга).  Регекспы просто не могут охватить грамматику HTML, они из разных классов, и всё тут.  Любое решение этого вопроса только-на-регекспах уже содержит ошибку, видите ли вы её или нет.  Правильное решение требует написания полноценного парсера (в котором можно юзать регекспы, но они будут играть не ключевую роль).  А лучше всего юзать готовые библиотеки для разбора HTML или XML.

"Регулярные выражения, как вырезать теги"
Отправлено angra , 12-Авг-08 04:35 
Уважаемый, вы тут полную чушь сморозили. Если лично вы не умеете пользоваться регексами, то не надо других от этого отговаривать. Зачем нужен полноценный парсер(кстати что это такое в _вашем_ понимании, то есть что является результатом его работы?), если задача решается парой регексов?
Ну а про "не могут охватить грамматику HTML" так ведь даже браузеры в этом не едины, а вы хотите каким то конкретным парсером обойтись.

"Регулярные выражения, как вырезать теги"
Отправлено BigHo , 21-Авг-08 20:37 
Вообще-то человек дело говорит. Регекс хоть и мощная штука, но разбирать им html, это как откручивать отверткой гвозди: инструмент не по задаче, и сколько бы опыту не приобрел в этом трудном деле - все равно будет неудобно.

"Регулярные выражения, как вырезать теги"
Отправлено angra , 22-Авг-08 14:55 
Что в вашем понимании "разбирать им html"? Что является результатом "разбирания"? Приведите практический пример где это вам было необходимо.

"Регулярные выражения, как вырезать теги"
Отправлено BigHo , 22-Авг-08 17:04 
>Что в вашем понимании "разбирать им html"? Что является результатом "разбирания"? Приведите
>практический пример где это вам было необходимо.

особо не надо было, а где надо - справлялся SAX парсером - никак уж не regex-ом (бррр-р-р-р-р). Могу сказать, что есть такие задачи, когда будет неудобно пользоваться даже SAX-ом. Конкретизировать не буду - ибо лень. В качестве ссылок могу предложить поискать по ключевым словам XSLT, Tidy - это то, будет интересно человеку, уставшему от регекса.