Tüm makaleler

Karakter ve kelime sayma: neden her zaman basit değil

Bir metindeki karakterleri ve kelimeleri saymak basit görünür, ama Türkçenin eklemeli yapısı, "kelime" kavramının başka dillerden çok daha fazla bilgi taşımasına yol açar.

Eklemeli dil: bir kelime, bir cümle kadar bilgi

Türkçe kökler üzerine art arda ekler eklenerek uzun kelimeler oluşturulur: "Muvaffakiyetsizleştiricileştiriveremeyebileceklerimizdenmişsinizcesine" tek bir kelime olarak yazılabilir, ama başka bir dilde bunu ifade etmek çoğunlukla tam bir cümle gerektirir. Bu yüzden iki dildeki metinlerin kelime sayısını doğrudan karşılaştırmak, aynı miktarda bilgiyi taşımadıkları için yanıltıcı olabilir.

Noktalı I / noktasız ı problemi

Türkçede büyük harf "İ" küçük harfte noktalı "i" olur, büyük harf "I" ise küçük harfte noktasız "ı" olur — bu, İngilizce ve birçok dilin varsaydığı basit "büyük/küçük harf" eşlemesinden farklıdır. "Büyük/küçük harf duyarsız" olarak işaretlenmiş bir kelime veya karakter sayım aracı, Türkçe metinde "I" ve "ı" harflerini birleştirirken sistem varsayılan kurallarına göre beklenmedik sonuçlar verebilir.

Kesme işareti ve özel adlar

Türkçede özel isimlere gelen ekler kesme işaretiyle ayrılır: "İstanbul'da", "Ahmet'in" gibi. Bu kesme işareti bir kelime ayırıcı değildir — "İstanbul'da" tek bir kelimedir — ama bazı basit ayrıştırıcılar kesme işaretini bir sınır olarak yanlış yorumlayıp kelimeyi ikiye bölebilir.

Buna neden ihtiyaç duyulur

  • Bir metni bir karakter sınırına (bir tweet, bir SMS, bir form alanı) göre kontrol etmek.
  • Kelime sayısından bir makalenin yaklaşık okuma süresini tahmin etmek.
  • Türkçe metinde büyük/küçük harf dönüşümünün İ/ı ve I/i çiftleri yüzünden neden beklenmedik davrandığını anlamak.

Boşluk içermeyen dillerde kelime sayımı

Çince, Japonca veya Tayca'da kelimeler geleneksel olarak boşlukla ayrılmaz — kelime sınırını boşluk değil, dilbilgisi ve bağlam belirler. Bu yüzden bu diller için "kelime sayımı" aslında ayrı bir metin bölütleme (segmentasyon) algoritması gerektirir; boşluğa dayalı basit bir sayım, ya tüm metni tek bir "kelime" olarak sayar ya da tamamen anlamını yitirir.

Aracı dene