[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: заменить три пустых строки одной



On Fri, 02 Jun 2006 17:06:19 +0400
Artem Chuprina <ran@ran.pp.ru> wrote:

> Vladimir Zolotykh -> debian-russian@lists.debian.org  @ Fri, 2 Jun 2006 15:23:43 +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'
Признаться не люблю Perl (извини), поэтому вероятно не стремлюсь
узнать его лучше, поэтому не могу сказать, почему команда
удаляет _все_ пустые строки не оставляя ни одной.


-- 
Vladimir Zolotykh



Reply to: