Re: заменить три пустых строки одной
Vladimir Zolotykh -> debian-russian@lists.debian.org @ Fri, 2 Jun 2006 16:53:37 +0300:
>> VZ> Подскажите пожалуйста как
>> VZ> заменить три пустых строки подряд одной пустой строкой
>> VZ> по всему файлу? Т.е. в исходной файле иногда встречаются
>> VZ> три пустых строки (не уверен, что в пустых строках нет пробелов
>> VZ> или табуляций), нужно каждую такую тройку заменить одной пустой строкой.
>> VZ> Вот пример одной такой тройки пустых строк (в формате OD)
>>
>> VZ> 0000000 012 012 040 012 040 040 040 040 040 040 040 040 040 040 040 040
>> VZ> 0000020 040 040 040 040 040 040 040 012 012
>> VZ> 0000031
>>
>> perl -p0e 's/(^|\n)[ \t]*\n[ \t]*\n[ \t]*(\n|$)/$2/gs'
VZ> Признаться не люблю Perl (извини), поэтому вероятно не стремлюсь
VZ> узнать его лучше, поэтому не могу сказать, почему команда
VZ> удаляет _все_ пустые строки не оставляя ни одной.
Пардон. $1$2, а не просто $2. Края надо оставить оба как есть.
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
У кошки четыре ноги: ввод, вывод, земля и питание.
Reply to: