Tanda hubung dan koma tidak memisahkan kata
Implementasi memakai trim() pada kedua ujung lalu memisahkan dengan /\s+/u. Masukan kosong atau hanya whitespace bernilai 0. Spasi, tab dan pergantian baris memisahkan kelompok; tanda hubung, koma dan apostrof saja tidak. \s JavaScript sesuai WhiteSpace dan LineTerminator pada spesifikasi.
Jadi state-of-the-art bernilai 1, one,two 1, dan one, two 2. don’t stop juga dua kelompok. ... bernilai 1 meski hanya tanda baca; jangan menganggapnya jumlah kata bermakna. words pada kode adalah statistik alat.
countText("state-of-the-art").words // 1
countText("one,two").words // 1
countText("one, two").words // 2
countText("don’t stop").words // 2
countText("...").words // 1Teks tanpa spasi tidak dipisahkan menurut bahasa
你好世界 bernilai 1 di alat ini. Itu tidak berarti kalimat Mandarin memiliki satu kata secara linguistik. Unicode UAX #29 menjelaskan bahwa batas kata tidak terbatas pada whitespace dan tanda baca, dan sebagian bahasa memerlukan penyesuaian. Moyoutil tidak memakai algoritme itu atau analisis kamus.
countText("你好世界").words // 1
countText("one two").words // 2
countText("one\ntwo").words // 2
countText(" \t\n").words // 0Unicode UAX #29: Word Boundaries
Tempel teks pada penghitung karakter dan byte untuk memperbarui statistik langsung. Periksa kalimat perwakilan dengan tanda hubung atau baris baru sebelum seluruh draf. Jika pengumpulan menentukan editor atau metode, gunakan untuk pemeriksaan akhir. Menambah spasi yang tidak perlu untuk mengubah jumlah mengubah teks itu sendiri.
Pertanyaan yang Sering Diajukan
Apakah spasi berulang atau baris baru menambah jumlah?
Pemisah berurutan membentuk satu batas. Dua spasi antara one dan two tetap 2; baris baru juga 2. Jumlah kata sama dapat memiliki jumlah karakter termasuk spasi atau byte UTF-8 berbeda.