連続した空白行を検出するスクリプト
30分プログラム、その634。連続した空白行を検出するスクリプトを書いてみた。
連続した空白行は意図していれることもあるけど、たいていはうっかり改行をいれすぎちゃったときのほうが多い。
別にそれくらいいいじゃん、とかいう話はおいといて、とりあえず検出するスクリプトを書いてみよう。
使い方
$ echo -n "\n" | python double-blank.py ; echo $? 0 $ echo -n "\n\n" | python double-blank.py ; echo $? 1
ソースコード
#! /usr/bin/python # -*- mode:python; coding:utf-8 -*- # # double-blank.py - # # Copyright(C) 2009 by mzp # Author: MIZUNO Hiroki / mzpppp at gmail dot com # http://howdyworld.org # # Timestamp: 2009/08/07 22:02:25 # # This program is free software; you can redistribute it and/or # modify it under MIT Lincence. # from __future__ import with_statement import sys from itertools import * def argf(): if len(sys.argv) <= 1: for line in sys.stdin: yield line else: for file in sys.argv[1:]: with open(file) as f: for line in f: yield line def is_double_line(io): lines = list(io) return any(starmap(lambda x,y: x == y == "\n", zip(lines,lines[1:]))) if is_double_line(argf()): sys.exit(1) else: sys.exit(0)