[#42196] YAML でEUC は使えないのでしょうか。 — Tomokiyo Nomura <tnomura@...>
野村@延岡です。
8 messages
2006/05/05
[#42214] [ANN] RubyKaigi 2006 Announcement — SASADA Koichi <ko1@...>
日本Rubyの会、日本Rubyカンファレンス2006実行委員のささだです。
4 messages
2006/05/10
[#42235] ftp:// のリストを open-uri で得られないでしょうか — "Hideo Konami" <konami@...>
小波です。
5 messages
2006/05/20
[#42243] コミュニティと宗教の分離について — Beyond <beyond@...>
14 messages
2006/05/21
[#42245] Re: コミュニティと宗教の分離について
— Masayoshi Takahashi <takahashi@...>
2006/05/22
高橋征義です。「日本Rubyの会」という集まりの代表をしております。
[#42253] File objectがいつのまにか nilに、 — しん <dezawa@...>
出沢です
9 messages
2006/05/23
[#42267] メニューのループについて — リックス <rubyer4649@...>
りっくすです
21 messages
2006/05/27
[#42275] Re: メニューのループについて
— rubikitch <rubikitch@...>
2006/05/27
From: リックス <rubyer4649@yahoo.co.jp>
[#42276] Re: メニューのループについて
— Hiroshi Yuki <hyuki@...>
2006/05/27
結城です。
[#42301] Re: メニューのループについて — "conundrum /" <conundrum@...>
conundrumです。
11 messages
2006/05/28
[#42306] Re: メニューのループについて
— rubikitch <rubikitch@...>
2006/05/29
From: "conundrum /" <conundrum@hotmail.co.jp>
[ruby-list:42261] Re: File objectがいつのまにか nilに、
From:
"Hiroyuki Iwatsuki" <don@...>
Date:
2006-05-23 11:33:41 UTC
List:
ruby-list #42261
岩月と申します。
かなり適当ですが、こんな感じではどうでしょうか。
先頭部分が一致しない行に達するまで行を溜め込んでから
ファイルに保存しています。
M = %w(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec)
def save(m, d, s)
fn = "%02d%02d.txt" % [m, d]
File.open(fn, "a+") do |o|
o.write(s)
end
end
# 入力ファイル名リスト
files = ["dhcplog1.txt", "dhcplog2.txt", "dhcplog3.txt"]
files.each do |file|
File.open(file) do |i|
k, m, d, s = nil, nil, nil, ""
while not i.eof?
line = i.readline
if /^([A-Za-z]+)\s+(\d+)/ =~ line
if $& == k
s << line
else
save(m, d, s) unless k.nil?
k, m, d, s = $&, M.index($1) + 1, $2.to_i, line
end
end
end
save(m, d, s) unless s.nil?
end
end
入力データが文字列ならもっと短くて済むんですが。
str.scan(/^(([A-Za-z]+)\s+(\d+))[^\n]+\n(\1[^\n]+\n)*/) do
filename = "%02d%02d.txt" % [M.index($2) + 1, $3.to_i]
File.open(filename, "w") do |f|
f.write($&)
end
end
--
IWATSUKI Hiroyuki <URL:mailto:don@na.rim.or.jp>