Teks & alat sehari-hari · Perangkat Teks
Tanda baca lebar penuh: mengapa 。 dan ! penting untuk kasus kalimat dan penghitungan
· Latar belakang
alat teks unicode cjk-tanda baca
Menjelaskan apa yang dimaksud dengan lebar penuh dan tanda baca ideografis, mengapa teks CJK menggunakannya, dan mengapa konverter huruf besar-kecil atau penghitung kalimat yang hanya mengetahui ASCII tanda titik membuat teks bilingual salah.
Paragraf bahasa Jepang dihitung sebagai satu kalimat — bagaimana alat yang hanya ASCII meleset 。 dan ! seluruhnya
Tempelkan `Release ready. 次の版です。確認してください!` ke dalam penghitung yang hanya mengenali titik ASCII dan bagian bahasa Jepang dapat diserap ke dalam satu sisa panjang. Tanda yang terlihat bukanlah varian dekoratif: tanda tersebut merupakan batasan yang digunakan pembaca, jadi mengabaikannya akan menghasilkan total kalimat yang menyesatkan.
ToolAcre mencakup `.`, `!`, `?`, `。`, `!`, dan `?` dalam kumpulan pencocokan kalimatnya. Itu memperbaiki kegagalan khusus ASCII saja, tetapi tidak membuat penghitung menjadi parser Jepang. Hasilnya masih berasal dari jaringan teks yang dibagi dengan tanda baca yang dikenali, tanpa model tata bahasa yang menentukan di mana sebuah pemikiran berakhir.
Lebar setengah dan lebar penuh — warisan pengaturan huruf CJK nada tetap dan blok Unicode yang membawanya
“Lebar penuh” menjelaskan karakter yang dirancang untuk menempati lebar yang terkait dengan sel ideografis dalam tata letak Asia Timur dengan lebar tetap. Unicode mempertahankan bentuk kompatibilitas seperti `!` dan `?`, sementara bahasa Jepang juga menggunakan tanda baca ideografik termasuk `。` dan `、`. Tampilan yang serupa tidak berarti titik kode yang identik atau semantik yang dapat dipertukarkan.
Standar Unicode menempatkan varian ASCII lebar penuh di blok Bentuk Halfwidth dan Fullwidth, sedangkan U+3002 IDEOGRAPHIC FULL STOP dan U+3001 IDEOGRAPHIC COMMA termasuk dalam Simbol CJK dan Tanda Baca. Perbedaan tersebut penting bagi perangkat lunak: ekspresi reguler harus memberi nama atau mengklasifikasikan karakter sebenarnya yang ingin dikenali.
Tanda titik ideografis dan kerabatnya — 。、CHI? dan bentuk tanda baca ASCII lebar penuh
`。` biasanya menutup kalimat bahasa Jepang, `、` memisahkan materi dalam satu kalimat, dan `!?` memberikan bentuk pertanyaan dan seru yang familiar dalam salinan modern. Lebar penuh `!` dan `?` secara visual berhubungan dengan versi lebar dari tanda ASCII; mereka tidak dikonversi secara otomatis hanya karena editor menampilkannya dalam ukuran yang sama.
ToolAcre memperlakukan `。!?` sebagai terminator kalimat tetapi tidak `、`, yang sesuai untuk aturan penghitungannya yang sempit. Terminator berulang digunakan dengan teks sebelumnya sebagai satu proses yang cocok, jadi `本当!?` menyumbangkan satu kalimat, bukan dua. Kutipan, tanda kurung, dan konvensi editorial tidak menerima interpretasi linguistik terpisah.
Apa yang dibutuhkan oleh transformasi sadar kalimat — mengenali akhir kalimat di seluruh skrip sebelum menggunakan huruf besar atau menghitung
Kasus Kalimat pertama-tama mengubah seluruh masukan menjadi huruf kecil. Kemudian menggunakan huruf kecil di awal, atau setelah salah satu dari enam terminator yang dikenali hanya jika terminator tersebut diikuti dengan spasi. Oleh karena itu `hello。 world` menjadi `Hello。 World`, sedangkan `hello。world` membiarkan kata bahasa Inggris kedua menggunakan huruf kecil.
Kondisi spasi tersebut mengoreksi klaim garis besar yang lebih luas bahwa mengakui sebuah akhir saja sudah cukup. Bahasa Jepang biasanya memulai kalimat berikutnya tepat setelah `。`, tanpa spasi, dan karakter Jepang umumnya tidak memiliki huruf besar. Dalam salinan campuran, tambahkan spasi hanya jika gaya editorial memerlukannya; jangan memasukkannya hanya untuk mendorong konversi.
Apa yang sebenarnya dikenali oleh transformasi kasus kalimat ini: terminator diikuti spasi
Kata figure menggunakan proses yang dipisahkan spasi. Oleh karena itu, sebuah bagian bahasa Jepang tanpa spasi dapat dihitung sebagai satu “kata” bahkan ketika pembaca mengidentifikasi banyak unit leksikal. Sebaliknya, tanda baca tanpa spasi di sekelilingnya tidak membagi proses: `end,start` adalah satu kata dalam definisi ini. Jumlahnya bersifat mekanis, bukan jumlah token yang sadar bahasa.
Penghitungan kalimat juga berbasis tanda baca. Tanda titik di `Dr. Smith` dapat membuat kalimat tambahan, sedangkan jeda baris tanpa tanda baca tidak menimbulkan batas kalimat baru. Penghitung mengenali CJK terminator dan tanda berulang, namun kutipan, singkatan, elips, dan bentuk tanda baca yang salah masih dapat membuat keluarannya berbeda dari penilaian editorial.
Penghitungan berdasarkan spasi, kata, dan tanda baca: angka berguna dengan batasan eksplisit
Coba `LAUNCH READY. 次の版です。 check names! FINAL PASS?` di Text Toolkit. Kasus kalimat menghasilkan `Launch ready. 次の版です。 Check names! Final pass?`: semua teks berhuruf besar diturunkan terlebih dahulu, kemudian huruf pembuka setelah batas terminator plus spasi ditinggikan. Teks bahasa Jepang secara visual tetap tidak berubah karena tidak ada perbedaan huruf besar/kecil.
Bacalah statistik di samping hasil tersebut sebagai definisi, bukan putusan. Sampel memiliki empat jaringan kalimat yang dibatasi tanda baca, sedangkan total kata mengikuti lima bagian yang dipisahkan spasi, bukan morfologi Jepang. Total karakter menggunakan cluster grafem di mana `Intl.Segmenter` tersedia, dan total tanpa spasi menghilangkan spasi Unicode sebelum menghitung ulang.
Contoh praktis: periksa transformasi dan setiap penghitungan alih-alih mengasumsikan analisis linguistik
Perilaku ini tidak menerapkan aturan pelanggaran garis Jepang, komposisi vertikal, anotasi rubi, atau pembatasan kinsoku shori mengenai tempat munculnya tanda baca. Itu juga tidak menormalkan karakter setengah lebar dan lebar penuh. Jika publikasi memerlukan pemeriksaan tipografi, gunakan editor atau sistem tata letak dengan dukungan eksplisit bahasa Jepang setelah transformasi teks.
Casing khusus lokal juga tidak dapat dijanjikan. Konverter menggunakan pemetaan Unicode JavaScript default, kata benda dan akronim dengan huruf kecil, dan dapat salah mengira batas singkatan sebagai batas kalimat ketika spasi mengikutinya. Pembatalan tersedia, namun tinjauan editorial tetap diperlukan untuk nama, kapitalisasi merek, dan keputusan gaya bilingual.
Kesimpulannya — Kasus Kalimat pada Toolkit Teks mengenali akhir kalimat CJK dengan lebar penuh, sehingga penyalinan bilingual ditangani, bukan ditangani setengah-setengah
Tanda baca lebar penuh penting karena kode melihat karakter, bukan maksud visual. ToolAcre secara eksplisit menyertakan `。!?` dalam pencocokan kalimat berbasis tanda baca, jadi salinan campuran Inggris-Jepang tidak terbatas pada akhiran ASCII. Aturan kasus Kalimatnya lebih sempit: kapitalisasi hanya terjadi di awal atau setelah terminator yang dikenali diikuti dengan spasi.
Gunakan Perangkat Teks untuk memaparkan aturan-aturan tersebut dengan cepat, lalu tafsirkan setiap gambar dalam konteksnya. Total kalimat adalah perkiraan pembatas, kata-kata adalah proses yang dipisahkan spasi, dan karakter adalah grafem yang dirasakan pembaca ketika dukungan browser mengizinkan. Batasan transparan tersebut membuat keluarannya berguna tanpa berpura-pura bahwa fungsi browser yang ringkas melakukan analisis linguistik penuh.