I have a lot  of files in an folder and want loop over the files in a
special way:

Dir.entries("f:/test/").each { |e| filenames.push(e[3..50])}

Now i have an array with the distinct names like:
a.txt
b.txt
c.txt
d.txt
...
z.txt

, but every file "have 20 parts" which i have to proceed:
00_a.txt
01_a.txt
02_a.txt
..
19_a.txt


for i in 0..19
filenames.map{ |t| if i < 10  then p  "0#{i}_#{t}"  else  p
"#{i}_#{t}" end }
end


I find something about MultiValuedHash, but i didn't know how i get my
structure (....the distinct names are the keys and the 20 parts for
every key as values ) like the raw_data in an easy way.

raw_data=[[1,'a'],[1,'b'],[1,'c'],[2,'a'],[2,['b','c']],
          [3,'c']]

class MultiValuedHash < Hash
    def []=(key,value)
        if has_key?(key)
            super(key,[value,self[key]].flatten)
        else
            super
        end
    end
end

hash=MultiValuedHash.new
raw_data.each{ |x,y| hash[x]=y }

many thanks  & regards
Christian