Utilia

Onzichtbare tekens verwijderen

Vind en verwijder onzichtbare tekens online. Spoor zero-width spaces, harde spaties, zachte afbreekstreepjes en bidi-tekens (Trojan Source) op.

Te verwijderen tekens

Zo verwijder je onzichtbare tekens

  1. Plak je tekst in het invoervak. Hij wordt meteen gescand.
  2. Bekijk het resultaat: een tabel toont elk gevonden verborgen teken met het codepunt, de afkorting, de Unicode-naam, de soort en het aantal. De Gemarkeerde invoer laat zien waar elk teken staat, als een klein gekleurd label zoals ZWSP of NBSP.
  3. Laat onder Te verwijderen tekens de soorten aangevinkt die je wilt verwijderen. Met Alles / niets selecteren zet je ze in één keer aan of uit.
  4. Laat Harde en speciale spaties vervangen door een gewone spatie aangevinkt, zodat “€ 10” zijn spatie houdt in plaats van “€10” te worden.
  5. Kopieer de opgeschoonde tekst uit het resultaatvak. Met Onzichtbare tekens verwijderen vernieuw je het resultaat.

Wat deze tool opspoort

Soort Tekens Waar ze vandaan komen
Tekens zonder breedte ZWSP U+200B, ZWNJ U+200C, ZWJ U+200D, WJ U+2060, BOM U+FEFF Webpagina’s, tekstverwerkers, tekst gekopieerd uit pdf’s of chatapps, bestanden opgeslagen met een byte order mark
Harde en speciale spaties NBSP U+00A0, smalle NBSP U+202F, dunne, em-, en-, cijfer- en ideografische spaties, regel- en alineascheidingstekens HTML  , Franse typografie, Word, Option+spatie op macOS
Zachte afbreekstreepjes SHY U+00AD Afbreekhints uit tekstverwerkers en websites
Tekens voor schrijfrichting LRM, RLM, ALM, LRE–RLO (U+202A–U+202E), LRI–PDI (U+2066–U+2069) Gemengde Arabische, Hebreeuwse en Latijnse tekst, en kwaadaardige code
Stuurtekens NUL, ESC, form feed, DEL, C1-stuurtekens Terminaluitvoer, oude bestanden, kapotte codering
Overige opmaaktekens Tagtekens, onzichtbare wiskundige operatoren, Hangul-opvultekens, lege braillecel, elk ander Unicode-teken van het type “Cf” Verborgen watermerken, “lege” gebruikersnamen, obscure bronnen
Variatiekiezers VS1–VS256 Emojistijlen, CJK-varianten en een steganografietruc die gegevens achter een emoji verstopt

Tabs, regeleinden (line feed) en carriage returns zijn gewone tekens en blijven altijd staan. Variatiekiezers zijn standaard niet geselecteerd, omdat ze meestal een legitiem doel hebben.

Waarom onzichtbare tekens problemen geven

Je ziet ze niet, maar computers wel. Een zero-width space midden in een woord breekt zoeken en spellingcontrole, een byte order mark aan het begin van een CSV-bestand verminkt de naam van de eerste kolom, een harde spatie zorgt dat twee waarden in een spreadsheetzoekfunctie of een wachtwoordveld niet meer gelijk zijn, en een zacht afbreekstreepje kan een URL splitsen. Code met een verdwaalde U+FEFF of U+00A0 compileert soms niet, met een raadselachtige foutmelding.

Onzichtbare tekens kunnen ook met opzet zijn toegevoegd: sommige worden gebruikt om gekopieerde tekst van een vingerafdruk te voorzien, zodat een lek naar de bron kan worden herleid.

Trojan Source en tekens voor schrijfrichting

Tekens voor schrijfrichting (bidi-tekens) vertellen de weergave dat een deel van een regel van rechts naar links moet lopen. In broncode kunnen ze ervoor zorgen dat de code er anders uitziet dan wat de compiler echt uitvoert. Die aanval werd in 2021 gepubliceerd als “Trojan Source” (CVE-2021-42574). Vindt de tool zo’n teken, dan toont hij een waarschuwing. Gewone Arabische of Hebreeuwse tekst kan LRM- en RLM-tekens bevatten, maar embedding-, override- en isolate-tekens in code of een configuratiebestand zijn een alarmsignaal.

Bewaar wat je nodig hebt

  • Verbindingstekens en kiezers binnen emoji behouden beschermt de zero-width joiners en variatiekiezers waarmee emoji zoals 👨‍👩‍👧 of ❤️ zijn opgebouwd. Vink het uit om ook die te verwijderen; de gezinsemoji valt dan uiteen in drie losse personen.
  • Perzisch, Hindi en andere schriften gebruiken ZWNJ en ZWJ om te bepalen hoe letters aan elkaar worden geschreven. Vink voor zulke tekst Tekens zonder breedte (ZWSP, ZWNJ, ZWJ, WJ, BOM) uit.
  • Franse typografie gebruikt smalle harde spaties vóór ; : ! ? en binnen « ». Vink de soort spaties uit om ze te behouden.

Veelgestelde vragen

Hoe weet ik of mijn tekst zero-width spaces bevat?

Plak hem hier. Blijft de tabel leeg en staat er “Geen onzichtbare tekens gevonden.”, dan zitten ze er niet in.

Plakken mijn woorden aan elkaar als ik harde spaties verwijder?

Niet met de standaardinstelling: harde en speciale spaties worden vervangen door een gewone spatie. Vink de vervangoptie alleen uit als je ze echt wilt wissen.

Verwijdert de tool ook gewone spaties, tabs of regeleinden?

Nee. Alleen de soorten tekens hierboven worden aangepakt.

Kan ik veilig vertrouwelijke tekst plakken?

Ja. Het scannen en opschonen gebeurt in je browser; er wordt niets geüpload of opgeslagen.

Waarom staat er na het opschonen nog steeds een vreemd teken aan het begin van mijn bestand?

Als het bestand niet in UTF-8 is opgeslagen, ligt het probleem misschien aan de codering en niet aan een onzichtbaar teken. Sla het bestand opnieuw op als UTF-8 en scan het nog een keer.