onlinetools.dev

Unicode Karakter İnceleyici

Her karakterin kod noktasını, UTF-8/UTF-16 baytlarını ve kaçışlarını görün

Yerelde çalışır
loading…
Bu araç hakkında

Herhangi bir metni yapıştırın ve her karakteri parçalarına ayrılmış görün: kod noktası (U+XXXX), UTF-8 baytları, UTF-16 birimleri, JavaScript kaçış dizisi, HTML varlığı ve genel kategori — ayrıca kod noktaları, UTF-16 birimleri, UTF-8 baytları ve kullanıcının algıladığı karakterler (grafem kümeleri) için toplamlar.

Bu, “bu dizge neden tuhaf?” anlarının aracıdır: görünmez karakterler (sıfır genişlikli boşluklar, BOM’lar, yön işaretleri) görünür satırlar hâlinde ortaya çıkar; birbirine benzeyen karakterler (Kiril а ile Latin a) farklı kod noktaları olduklarını açık eder; ve “tek karakter olan” bir emoji, sıfır genişlikli birleştiricilerle bağlanmış yedi kod noktası çıkar.

Dört ayrı uzunluk toplamı, JavaScript’in .length değerinin, bir veritabanı bayt sınırının ve kullanıcının gördüğünün bir dizgenin uzunluğu konusunda neden asla anlaşamadığı sorusunu yanıtlar.

Sıkça sorulan sorular

JavaScript’te "🎉".length neden 2?
JavaScript dizgeleri UTF-16 kod birimlerini sayar. U+FFFF üzerindeki karakterler — çoğu emoji dâhil — vekil çifti, yani iki birim gerektirir. İnceleyici hem birimleri hem gerçek kod noktasını gösterir, özet ise ikisini ayrı ayrı sayar.
Grafem kümesi nedir?
Okuyucunun tek karakter olarak algıladığı şeydir. é iki kod noktası olabilir (e + birleşen aksan) ve aile emojileri sıfır genişlikli birleştiricilerle bağlanmış yedi ya da daha fazla kod noktasından oluşabilir. Grafem sayımı tarayıcının Intl.Segmenter’ını kullanır — “kullanıcının gördüğü karakterler”e en yakın şey.
Bir dizgedeki görünmez karakterleri nasıl bulurum?
Buraya yapıştırın — her kod noktası bir satır alır; sıfır genişlikli boşluklar (U+200B), bölünemez boşluklar (U+00A0), BOM’lar (U+FEFF) ve yön işaretleri dâhil, her biri kategorisiyle etiketlenmiş olarak. Bunlar, eşitlik denetimlerinden geçemeyen “özdeş” dizgelerin ardındaki klasik suçlulardır.
UTF-8 bayt dizileri bana ne anlatıyor?
Tam olarak neyin saklanacağını ya da iletileceğini: ASCII bir bayt, çoğu Latin genişletmesi iki, CJK üç, emoji dört bayttır. Bir sistem dizinin ortasından kırparsa yerine koyma karakterleri (�) alırsınız — bayt görünümü böyle kesiklerin nereye denk geleceğini gösterir.
İlgili araçlar