Замена/удаление НЕнайденного (текстовый редактор)

Обсуждение любых программ, не имеющих отношения к Total Commander.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Ответить
_Johm
Сообщения: 119
Зарегистрирован: Вс май 14, 2006 20:03

Замена/удаление НЕнайденного (текстовый редактор)

Сообщение _Johm »

Пользуюсь notepadd++. Используя regexp, нахожу нужные строки.
Мне нужно их оставить, остальные удалить . В этом редакторе я
функцию не нашел.
Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

Я обычно в EmEditor'е поступаю так: к найденным строкам приписываю в начало какой-нибудь символ, которого там точно не должно быть (решётка, процент, амперсанд какой-нибудь). Затем вторым проходом убиваю все строки, начинающиеся не с добавленного мной символа (^[^#].*\n), а третьим проходом грохаю этот маркер в оставшихся строках.

В отдельных случаях может помочь механизм look-ahead, но я не знаю, реализован ли он в Notepad++. Это выражения типа (?=...) и (?!...). C их помощью можно найти строки, не удовлетворяющие исходному выражению, и удалить.
Почему же, ё-моё, ты нигде не пишешь "ё"?
Аватара пользователя
Tol!k
Сообщения: 1727
Зарегистрирован: Вт апр 01, 2008 20:02
Откуда: Арзамас

Сообщение Tol!k »

С помощью (super)sed :

Код: Выделить всё

ssed.exe -n -i.bak /выраж./p файл.txt
_Johm
Сообщения: 119
Зарегистрирован: Вс май 14, 2006 20:03

Сообщение _Johm »

Спасибо за ответы, теперь смотрю в сторону EmEdit и потоковые
процессоры sed\awk, та как Notepad++ расстроил: RepEx у него
обрезанные (и, как где-то на форуме было сказано,даже
альтернативы | не понимает).
Впринципе, ++ инструмент приличный и удобный, но для
специфичных задач нужны более мощные потоковые обработчики.
P.S По мере поступления задач в жизни (связанной с компьютером),
октрываються новые горизонты программного обеспечения, изучив
эти программы, будущие задачи будут решаться более эллегантно.
Ответить