[問題] 多個關鍵字比對

看板Perl作者 (蘇打)時間9年前 (2014/10/16 00:03), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/2 (看更多)
各位板友好 最近需要寫個多重比對的程式 想請教比較有效率的寫法 比對關鍵字 A B C 輸入資料(文字檔) A:a123 A:a456 B:b111 D:d1234 B:bbb C:ccc 資料共有上千萬筆,關鍵字假設為3個 每行資料長度不見得一樣 希望能得到的資料為冒號後面的值 以上述範例來說 得到的是 a123 a456 b111 bbb ccc 輸出順序沒關係,只要有取得就好 之前想到的方法是用 foreach 每個關鍵字去掃 但如果關鍵字有10個(m) 資料有一千萬筆(n) 那複雜度就是 m * n = 一億 另一個方法是把資料變成一筆一筆 接著把關鍵字用 join 方式串接 不知道有沒有其他更好的方式呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.84.234.167 ※ 文章網址: http://www.ptt.cc/bbs/Perl/M.1413389006.A.3A5.html

10/16 00:32, , 1F
這關鍵字都會是一個字元嗎?
10/16 00:32, 1F
文章代碼(AID): #1KFfhEEb (Perl)
文章代碼(AID): #1KFfhEEb (Perl)