Unicode Normalizer
Normaliseer Unicode-tekst met behulp van NFC, NFD, NFKC en NFKD vormen.
Invoer
Uitvoer
Readme
Wat is Unicode-normalisatie?
Unicode definieert meerdere manieren om hetzelfde zichtbare teken weer te geven. Het teken "é" kan bijvoorbeeld worden opgeslagen als een enkel samengesteld codepunt (U+00E9) of als de letter "e" gevolgd door een combinerende acute accent (U+0065 U+0301). Beide worden identiek weergegeven, maar zijn byte-voor-byte verschillend, wat problemen veroorzaakt bij tekenreeksvergelijking, zoeken en tekstverwerking.
Unicode-normalisatie is het proces waarbij tekst wordt geconverteerd naar een canonieke representatie, zodat equivalente tekenreeksen identiek worden. De Unicode-standaard definieert vier normalisatievormen:
- NFC (Canonieke decompositie, gevolgd door canonieke compositie): Samengestelde vorm; meest compact, veel gebruikt op het web en in de meeste besturingssystemen.
- NFD (Canonieke decompositie): Volledig gedecomponeerde vorm; elk teken wordt opgesplitst in basisletter plus combinerende markeringen.
- NFKC (Compatibiliteitsdecompositie, gevolgd door canonieke compositie): Zoals NFC, maar vouwt ook compatibiliteitstekens (bijvoorbeeld ligaturen, superscripts, volledige breedte varianten) in hun canonieke equivalenten.
- NFKD (Compatibiliteitsdecompositie): Zoals NFD, maar past ook compatibiliteitsdecompositie toe.
Gereedschapbeschrijving
Dit gereedschap normaliseert Unicode-tekst van de ene normalisatievorm naar de andere. Selecteer de bron- en doelvormen, plak uw tekst, en de geconverteerde uitvoer verschijnt onmiddellijk.
Functies
- Alle vier normalisatievormen: Ondersteunt NFC, NFD, NFKC en NFKD als bron en doel.
- Bidirectionele conversie: Schakel vrij tussen elke combinatie van vormen.
- Realtime-uitvoer: Tekst wordt onmiddellijk genormaliseerd terwijl u typt of plakt.
- Verwerkt elk Unicode-script: Werkt met Latijn, CJK, Arabisch, Cyrillisch en elke ander Unicode-gecodeerde tekst.
Hoe het werkt
Het gereedschap past de standaard JavaScript String.prototype.normalize() methode toe met de geselecteerde doelvorm. Dit is een volledig spec-conforme implementatie van Unicode-normalisatie zoals gedefinieerd in Unicode Standard Annex #15.
Gebruiksscenario's
- Tekenreeksvergelijkingsoplossingen: Normaliseer tekst voordat u deze vergelijkt of indexeert, zodat visueel identieke tekenreeksen correct overeenkomen.
- Zoek- en databaseconsistentie: Standaardiseer gebruikersinvoer naar één vorm (meestal NFC) voordat u deze in een database opslaat, om dubbele vermeldingen te voorkomen die alleen in codering verschillen.
- Compatibiliteitssamenvouwing: Gebruik NFKC om ligaturen, superscripts en volledige breedtetekens in hun standaardequivalenten samen te vouwen voor zoekindexering of natuurlijke taalverwerking.