Найти n совпадение и заменить

Статус
В этой теме нельзя размещать новые ответы.

RedRabbit

Мой дом здесь!
Регистрация
11 Июл 2008
Сообщения
607
Реакции
256
Есть текст:
текст <BR>
текст <BR>
текст <BR>
текст <BR>

Нужно найти третий <BR> и заменить на пусто.
Помогите составить:)
 
найти
Код:
\A([^<]*<BR>[^<]*<BR>[^<]*)<BR>
заменить на
$1
 
А что такое вначале \A обозначает?
 
\A - начало многострочного текста (или начало файла)
\Z - соответственно конец

\A - имеет смысл если у тебя в тексте <BR> может быть более 5ти раз.

если более 5ти и без \A то будет заменять каждый третий <BR>, а не только первый
 
Хм. В зебройде что-то не работает(
 
Если в Зеброиде, то так попробуй:

Найти: (.*?<BR>.*?<BR>.*?)<BR>(.*)
Заменить на: \1\2
 
А как удалить, каждый второй <BR>?
И что значит \1\2?
Уж извините за возможно глупые вопросы, просто гугол не дает внятные ответы мне сейчас:(
 
\1 - вставляется первое то что у тебя в регулярке выделено скобками ()
\2 - вторые скобки
и тд )))
иногда (не во всех языках) используется обозначение как $1 что соответствует \1

для замены каждого второго br попробуй сделать так

Найти: <BR>([^<]*)<BR>
Заменить на: <BR>\1
 
Найти: <BR>([^<]*)<BR>
Заменить на: <BR>\1


Не будет работать если в тексте будут помимо <BR> другие тэги, например:

текст <BR>
<b>текст</b> <BR>
текст <BR>
текст <BR>

будет работать такая регулярка
Найти: <BR>(.*?)<BR>
Заменить на: <BR>\1
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху