Rubyで、あるファイルの空白行を全て取り除きたいのですが、

どのように書けばいいでしょうか?

よろしくお願い致します。

回答の条件
  • 1人2回まで
  • 登録:2009/12/26 19:48:34
  • 終了:2009/12/28 17:26:32

ベストアンサー

id:kn1967 No.2

kn1967回答回数2915ベストアンサー獲得回数3012009/12/26 20:14:58

ポイント76pt

2回も回答してスミマセン。 

1回目の回答は空白文字を考慮してませんでした。

i = open("a.txt")
s = i.read
i.close

o = open("b.txt", "w")
o.puts s.gsub(/\n(\s| )*\n/, "\n")
o.close

※ ¥sだと半角しか相手にしてくれないので全角空白も入れてます。

id:RESTfulJapan

これでできました。

ありがとうございました。

2009/12/28 17:25:35

その他の回答(2件)

id:kn1967 No.1

kn1967回答回数2915ベストアンサー獲得回数3012009/12/26 20:02:18

一例:a.txtを読みこんでb.txtに書き出し。

i = open("a.txt")
s = i.read
i.close

o = open("b.txt", "w")
o.puts s.gsub(/\n+/, "\n")
o.close

正規表現 - Rubyリファレンスマニュアル

http://www.ruby-lang.org/ja/man/html/_C0B5B5ACC9BDB8BD.html

id:kn1967 No.2

kn1967回答回数2915ベストアンサー獲得回数3012009/12/26 20:14:58ここでベストアンサー

ポイント76pt

2回も回答してスミマセン。 

1回目の回答は空白文字を考慮してませんでした。

i = open("a.txt")
s = i.read
i.close

o = open("b.txt", "w")
o.puts s.gsub(/\n(\s| )*\n/, "\n")
o.close

※ ¥sだと半角しか相手にしてくれないので全角空白も入れてます。

id:RESTfulJapan

これでできました。

ありがとうございました。

2009/12/28 17:25:35
id:azuco1975 No.3

azuco1975回答回数613ベストアンサー獲得回数162009/12/27 19:50:30

ポイント4pt

RubyなのでFileオブジェクトとか使ったコーディングしないとダサいです。

http://mlog.euqset.org/archives/ruby-list/42422.html

id:RESTfulJapan

勉強不足ですみませんが、kn1967さんの回答で満足です…。

2009/12/28 17:25:33

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません