Teks dan kode / MULTIVERTO

Normalisasi Unicode ke NFKC

NFKC menerapkan dekomposisi kompatibilitas diikuti oleh rekomposisi; perbedaan tipografis dapat menghilang. Konverter secara lokal di peramban Anda.

Konverter interaktifMasukan Anda tetap di peramban ini. Teks tidak diunggah untuk dikonversi.

Berkas tetap berada di peramban Anda.
Rangkai alat

Terapkan setiap alat teks pada hasil sebelumnya. Alur kerja teks ↗

Hanya nama rangkaian dan urutan alat yang disimpan di peramban ini. Masukan dan hasil Anda tidak pernah disimpan.

01 / Contoh

Contoh

Masukan AndaHalo ①
HasilHalo 1

02 / Panduan

Normalisasi Unicode ke NFKC — Cara kerja

Contoh konversi

NFKC menerapkan dekomposisi kompatibilitas diikuti oleh rekomposisi; perbedaan tipografi dapat menghilang. Konversi secara lokal di peramban Anda. Contoh masukan "Halo ①" menjadi "Halo 1". Pilih NFKC hanya bila aturan penerimaan menerima kompatibilitas melipat. Huruf lebar penuh dan angka yang di lingkarankan dapat menjadi karakter biasa, dan perubahan mungkin tidak dapat dibalik. NFKC dapat melipat perbedaan presentasi seperti lebar atau nomor tertutup, sehingga menerapkannya hanya setelah sistem penerima mendefinisikan kesetaraan itu.

Cara kerja representasi

Normalisasi Unicode mendefinisikan empat bentuk. NFC dan NFD adalah kanonikal: mereka mempertahankan ekuivalen kanonikal saat menyusun atau menggabungkan di mana didefinisikan. NFKC dan NFKD juga menerapkan pemetaan kompatibilitas, seperti mengubah huruf Latin lebar penuh atau angka yang dilingkari menjadi bentuk biasa; ini dapat membuang perbedaan yang penting dalam beberapa konteks. C berarti rekomposisi dan D berarti dekomposisi. Hasil normalisasi mungkin terlihat identik dengan sumber sementara urutan titik kodenya berubah. Normalisasi berguna sebelum perbandingan dan indeks pencarian yang tepat, tetapi bentuk yang dipilih harus konsisten di seluruh sistem. Ini bukan filter keamanan universal atau transliterator bahasa. NFKC menerapkan dekomposisi kompatibilitas diikuti oleh rekomposisi; perbedaan tipografi dapat menghilang. Sebelum mengadopsi NFKC untuk kunci database, bandingkan beberapa contoh nyata dari bidang yang diinginkan, termasuk bentuk lebar penuh, angka yang dilingkari dan huruf biasa.

Jika dua string yang sebelumnya berbeda jatuh ke kunci yang sama, memutuskan bagaimana kolisi akan ditangani; converter tidak dapat menyelesaikan kebijakan itu. Menggunakan NFKC dua kali harus stabil, tetapi stabilitas tidak reversibilitas. Jangan ganti nama tampilan atau sumber yang ditandatangani dengan hasil yang dilipat tanpa aturan yang jelas. Juga uji identifikator sensitif keamanan dengan aturan validasi lengkap aplikasi dan aturan deteksi yang tidak jelas, karena normalisasi kompatibilitas sendiri tidak lengkap.

Batas dan penggunaan yang dapat diandalkan

Normalisasi tidak menerjemahkan bahasa atau menghilangkan semua karakter yang tampak mirip. Bentuk kompatibilitas dapat dengan sengaja mengubah perbedaan bentuk teks. NFKC dapat digunakan sebagai kunci pencarian bila sebuah produk sengaja menganggap varian tipografi yang kompatibel sebagai setara. Misalnya, huruf Latin lebar penuh atau angka yang dilingkari dapat menjadi teks biasa setelah dekomposisi kompatibilitas dan rekomposisi. Itu adalah pilihan kebijakan, bukan perbaikan otomatis untuk setiap pengenal: string hasil perubahan mungkin tidak lagi mempertahankan apa yang diketik pengguna. Simpan teks asli untuk tampilan atau audit jika kesetiaan pada sumber penting. Jangan menganggap NFKC dapat mengatasi setiap karakter yang membingungkan secara visual atau membuat teks masukan aman bagi sebuah parser.

Cara konversi mengubah masukan
Teks Unicode
Normalisasi Unicode (NFKC)
NFKC · Teks Unicode Normalisasi