2009-09-14 64 views
13

Son birkaç gündür soundex, metaphone ve diğer dize arama teknikleri üzerinde çalışıyorum ve her iki algoritma da, İngilizce'ye çevrilmiş ingilizce olmayan sözcükleri işlemede iyi çalışır. Bununla birlikte, bu tür bir araştırmanın orijinal, çevrilmemiş diller, Almanca, Norveççe ve hatta Cyril alfabeleri gibi alfabetik harflerle yazılması için kullanmam gerekliliğiydi.İngilizce olmayan karakterler için soundex/metaphone'u etkinleştirme

Bu alfabeleri tamamen işleyebilen herhangi bir arama algoritması var mı? Yoksa Lucene gibi üçüncü taraf tam metin arama kütüphanelerini kullanmaktan daha mı iyi olurum? Sonuç olarak, soru 'Lucene, İngilizce olmayan alfabeleri ele alıyor mu?'

+1

Kullanım durumunuz yalnızca ingilizce olmayan dillerde metin araması yapıyorsa, soundex'e ihtiyacınız olmayabilir. Ire_and_curses'ın dediği gibi Lucene'ye uygun bir Analizöre ihtiyacınız var. Aynı kelimenin farklı yazı türlerini işlemek istiyorsanız, fonetik eşleme algoritmasına ihtiyacınız olacaktır. Kullanım durumunuz hakkında daha fazla şey söyleyebilir misiniz? –

cevap

15

Bu alanda uzman değilim, ancak ihtiyaçlarınız benim için zor görünüyor. Soundex özellikle İngilizce sesler ve karakterler için tasarlanmıştır. İngilizce olmayan diller için iyi performans göstereceğini düşünmüyorum. Örneğin, this related question'a verilen yanıtlara bakınız.

Double-Metaphone, Soundex veya Metaphone'dan çok daha karmaşık varyasyonlarla uğraşmak için bir girişimdir ve çeşitli dillerdeki düzensizlikleri işlemek üzere tasarlanmıştır. İhtiyaçlarınız için yeterli olabilir. Bağlı sayfada kütüphane uygulamalarının bir listesi var.

Lucene numaralı telefondaki diğer diller desteği, Analyzers konseptine dayanmaktadır. Lucene, farklı diller için bir dizi analizörle birlikte gelir (varsayılan listeyi bulamadığım halde), ancak kalite quite variable olabilir.

+0

Lucene + çözümleyicileri gerçekten aradığım şey gibi görünüyor, teşekkürler. :) –

+0

Çince, Japonca, Arapça ve Hint dilleri ne olacak? – Sharique

0

Soundex makalesinden başlayarak Vikipedi'de iyi bazı referanslar var. Çok çeşitli dilleri işlemek için tasarlanmış mevcut kütüphaneler olup olmadığını bilmiyorum.

+0

Burada referanslar, Avrupa isimlerinin Anglicized spellings'ini işleyen algoritmalara yöneliyor. Özel karakterleri gerçekte olduğu gibi görmedim - yanlış anlayamadığım sürece. –

+1

Belki de bazı Soundex varyantlarının diğer dillerle daha iyi çalışacak şekilde tasarlandığını düşündüm, fakat bunlar İngilizceye ya da açık yazımlara odaklanmışlardır. Bu dillerden her biri için LIKE Soundex bir şey yazmak zor olmaz, ancak eğer bir yerli konuşmacı değilseniz, muhtemelen bir dilbilimcinin yardımına ihtiyacınız vardır. –

İlgili konular