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

(DTPtechNote:1507) Re: [ruby]改行の削除



同じく乱暴なやり方しか浮かびませんが…
"。"とか”」”などの行末約物後の改行のみを残す、というのはどうでしょう

#せうぞーさんみたいにかっこ良くワンライナー書けないのでお恥ずかしいのですが
open(text_path){|io|
	io.each{|line|
		line.chomp!
		line.sub!(/([?.|。|」|)|?]|』])$/){$1 + "?n"}
		print line
	}
}

使用前
【aaaaあああああ
テスト。
「おはよう」
『おはようございます』と
いいながら。】

使用後
【aaaaあああああテスト。
「おはよう」
『おはようございます』といいながら。】

問題は「たまたま行末に行末約物がきただけの意図しない部分まで改行される」
「行末約物ではないところで入れた任意の改行が無視される」

です…。
これを克服するにはやっぱり行長の判定がいりますね。