簡體   English   中英

解析文件紅寶石

[英]parsing file ruby

我有一個包含這樣的數據的文件:

01 JUL something
       something
       something              445
       something else
01 JUL whatever
       everwa3
       lklkj                  445
       something else
02 JUL ljkjlkj
       ljkljlkj 
       lkjkjlk                500
       lkjkj
02 JUL ljlkjklj
       lkjkjlkj
       lkjkj                  500
       lkjlkj

最后,我想找出01 JUL 445和02 JUL 500的發生次數

在這種情況下。

01 JUL 445 = 2

02 JUL 500 = 2

我能夠在線閱讀並獲取數據...我該如何計算相同的事物?

counts = {}
date = ""
file.readlines.each_with_index do |l, i|
  if i % 4 == 0 # first line
    date = l.split("\t").first
  elsif i % 4 == 3 # third line
    wierd_num = l.split("\t").last
    counts[date+" "+wierd_num] ||= 0
    counts[date+" "+wierd_num] += 1
  end
end

puts counts # => {"01 JUL 445" => 2, "02 JUL 500" => 2}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM