Модераторы: ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Логическое "НЕ" для группировки символов, "НЕ" в наборе символов из группировок. 
V
    Опции темы
Dziro
Дата 20.3.2010, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 20.3.2010

Репутация: нет
Всего: нет



Стоит проблема удаления всех html-тэгов за исключением разрешённых.

Пытаюсь сделать такую маску на примере двух разрешённых тегов:
/\<\s*[\/]*\s*[^(div)|(ul)]+\s*?.*?\>/i

Тобишь суть в том что шаблон [^(div)|(ul)]+ не срабатывает, он должен звучать как НЕ (DIV или UL). Группировка символов насколько я понял тут не срабатывает.
PM MAIL   Вверх
Dziro
Дата 20.3.2010, 20:14 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 20.3.2010

Репутация: нет
Всего: нет



Нашёл решение. С помощью опережающей негативной проверки.
Сокращённо выглядит так:

my @tags = ('body', 'ol', 'ul', 'li', 'strong', 'em', 'strike', 'p');          # Разрешённые теги
my $tagsPatt = join('|', @tags);
$htmlText =~ s/<\s*\/*?\s*(?!$tagsPatt)\b.*?>//gim;               # Режем теги, не входящие в список разрешённых
print $htmlText;

Это сообщение отредактировал(а) Dziro - 20.3.2010, 20:16
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Регулярные выражения | Следующая тема »


 




[ Время генерации скрипта: 0.0382 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.