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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как обойтись без позитивного просмотра назад? 
V
    Опции темы
alezzz
Дата 19.1.2011, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сплю...
**


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

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



Суть проблемы:
есть такой текст:
test1
test2
<pre>
test3
test4
</pre>
test5
test6
<pre>
test7
test8
</pre>
test9
test10

Нужно чтобы в конце строки стояли <br>, но только в тех случаях, когда этот текст не помещен между <pre></pre>. Объединяю строки в одну переменную через join("<br>", @input). Теперь нужно удалить <br> между <pre></pre>. Делаю
s/(?<=.*?<pre>)<br>(?=.*?<\/pre>)//sg.
Но перл поддерживает позитивный просмотр назад только с "fixed-regexp", т.е. никаких ".*?" при "(?<=". Как быть? Может есть другой вариант? 

Это сообщение отредактировал(а) alezzz - 19.1.2011, 20:33
PM MAIL   Вверх
DurRandir
Дата 19.1.2011, 14:52 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



s!<pre>(.*?)</pre>!"<pre>".cut($1)."</pre>"!ge
sub cut{
 my $f = shift;
 $f =~ s/<br>//g;
 return $f;
}

Специально для тех, кто хотел это сделать именно регуляркойsmile
PM   Вверх
alezzz
Дата 19.1.2011, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сплю...
**


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

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



То что надо.  smile . Об этом я не подумал.

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


 




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


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

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