#!/usr/bin/ruby
require "open-uri"

id = Hash.new(0)
open(ARGV[0]) { |body|
body.each{ |line|
line.scan(/ID:(.*)<dd>/)
if $1 != nil
id[$1] += 1
end
}
}

id.sort{|b, c|
c[1] <=> b[1]
}.each{|key, value|
print "#{key}: #{value}\n"
}
print "参加者:", id.size

これでいいみたい
/は関係なかった
/とは関係なくkeyの値にnilが入っちゃうことがあって..