Java ile benzerlik Dize Karşılaştırma
Birbirimize birkaç dizeleri, ve en benzer olanları bulmak istiyorum. Eğer herhangi bir kütüphane, diğer dizeleri daha benzer olan bana dönecekti yöntemi veya en iyi yöntem olup olmadığını merak ediyordum. Örneğin:
- "Hızlı tilki atladı" ->"Tilki atladı"
- "Hızlı tilki atladı" ->"Tilki"
Bu karşılaştırma ilk saniyeden fazla benzer dönecekti.
Bazı yöntem gibi ihtiyacım var sanırım
similarityİndex(s1, String s2 String) çift
Böyle bir şey var mı?
EDİT: bunu Neden yapıyorum? Görevlerini işleyen bazı eski sistemin çıkış MS Proje dosyası çıktı karşılaştıran bir senaryo yazıyorum. Eski sistem çok sınırlı bir alan genişliği olduğundan, değerleri eklendiğinde açıklamaları kısaltılmıştır. Oluşturulan alabilirim yani yarı otomatik bir şekilde sistem girdileri benzer olan bulmak istiyorum. Hala elle kontrol edilmesi gibi sakıncaları vardır, ama bir sürü iş için para kalır
CEVAP
Evet, iyi belgelenmiş algoritmaları gibi birçok vardır:
- Kosinüs benzerliği
- Jaccard benzerlik
- Dice katsayısı
- Eşleşen benzerlik
- Benzerlik . üst üste
- vs vs
Alternatif olarak you can check this
Ayrıca bu projeler kontrol edin:
Java doğal sıralama düzeni dize karşıl...
Neden char[] şifreler için Dize Java t...
Java ile bir numaralama için bir Dize ...
Karşılaştırma Java numaralama üyeleri:...
Nasıl bir dosyanın içeriğini bir Java ...