システムで最も多くの倍音を含む曲に注意を向けて、音楽ライブラリをクリーンアップしたいと考えています。それらをすべてリストし、並べ替えて手動で行うこともできますが、時間がかかりすぎます。最も可能性の高い重複でリストを並べ替えたいと思います。したがって、曲に 10 個の重複がある場合、互いに似ている曲名が 10 個あることを意味するため、最初にその曲に注意を向けて、最良のバージョンを維持します。
レーベンシュタイン文字列比較技術と gem を使用して、2 つの曲名を比較できました。
require 'levenshtein'
Levenshtein.distance("string1", "string2") => 1
しかし、x 個の曲があるとしましょう。通常のファイルの並べ替えに頼ることができないため、各曲を x 回比較する必要があります。例えば
The Beatles - Hey Jude
Beatles, The - hey jude
Beatles_-_Hey_Judy_(remastered)
ビートルズをあげるべき - ヘイ・ジュディ (x3)
ファイル名に基づいてインデックスを作成し、それを並べ替えて、すべての重複を降順で表示する方法はありますか? 比較できるハッシュの一種?
私は他の音楽比較方法を知っていますが、それらには欠点があり、これは他のタイプのファイルの比較にも使用できます。