Skip to content

Diakritinių ženklų pašalinimas

Trys režimai — nuimk diakritikas su Unicode NFD, transliteruok ligatūras, kurių NFD nepasiekia (ß, æ, ø, Ł, þ, ð), arba sukurk URL saugius šlaugus. Pakeisti simboliai paryškinami vietoje.

Teksto įvestis

Režimas
Kaip elgtis su diakritikomis? ?
Įvestis Įvesties dar nėra
Rezultatas Nuimta ?

Kas keičiama

Nuimti · Transliteruoti

Nuėmimo režimas tvarko viską, ką Unicode gali išskaidyti. Transliteracija prideda rankomis sudarytą lentelę simboliams, kurių NFD suskaidyti negali — ligatūrų, eth, thorn, lenkiškajai įstriženajai L.

á à â ä ã åa
é è ê ëe
í ì î ïi
ó ò ô ö õo
ú ù û üu
ñn
çc
ý ÿy
š ş șs
ž ź żz
ßss
æ Æae AE
œ Œoe OE
ø Øo O
å Åa A
ł Łl L
đ Đd D
ð Ðd D
þ Þth TH
ı İi I
Nuimti + Transliteruoti Tik transliteracija

Kurį režimą rinktis?

Nuimti diakritikas

Grynasis NFD: kiekviena bazinė raidė išsaugoma, pašalinami tik jungiamieji ženklai. ß lieka kaip ß, æ lieka kaip æ. Tinka, kai reikia ištikimos lotyniškos formos be diakritikų — pvz., autorių pavardėms tvarkyti abėcėlės tvarka.

São Paulo, Dvořák Sao Paulo, Dvorak
Transliteruoti

NFD plius rankomis sudaryta lentelė simboliams, kurių Unicode neišskaido: ß→ss, æ→ae, ø→o, Ł→L, þ→th, ð→d. Tinkamas pasirinkimas, kai tolesnis kodas reikalauja griežto ASCII (senos sistemos, failų pavadinimai, identifikatoriai).

Straße, Bjørn Strasse, Bjorn
ASCII šlaugas

Transliteruoja, paskui verčia mažosiomis, sutraukia tarpus ir skyrybą į -, apkerpa brūkšnelius galuose. Tiesiogiai deda į URL kelią ar failų sistemai saugų pavadinimą. Puikiai dera su teksto į šlaugą generatoriumi.

Crème Brûlée & Co. creme-brulee-co

Kaip tai veikia

Diakritikų šalinimas remiasi Unicode NFD (normalizavimo skaidymo forma). NFD sudėtinį simbolį, pvz., é, išskaido į bazinę raidę e ir jungiamąjį kirčio ženklą U+0301. Pašalinus visus kodinius taškus jungiamųjų ženklų ruože U+0300–U+036F, bazinės raidės lieka nepaliestos.

NFD turi ribų. Kai kurios raidės nėra vien „bazinė raidė + kirčio ženklas" — jos yra atominiai simboliai, neturintys skaidinio. Vokiškasis aštrusis s ß, skandinaviškas ø, lenkiškas ł, senosios anglų þ ir ð bei ligatūros æ ir œ po NFD lieka nepakitę. Transliteracijos režimas juos tvarko rankomis sudaryta lentele (ß→ss, æ→ae, ø→o, Ł→L, þ→th, ð→d). Tai tinkamas režimas, kai tolesniam kodui reikia griežto ASCII.

Šlaugo režimas — tai transliteracija + mažosios raidės + brūkšnelių sutraukimas: kiekviena nealfanumerinių simbolių seka virsta vienu -, o pradžios ir pabaigos brūkšneliai apkerpami. Rezultatą gali dėti tiesiai į URL kelią ar failų sistemai saugų identifikatorių.

Nelotyniški raštai (CJK, arabų, kirilica, graikų, hebrajų, devanagari, tajų) nuėmimo ir transliteracijos režimuose lieka nepakitę, nes nenaudoja lotyniškų jungiamųjų diakritikų. Šlaugo režimas juos taip pat pašalina — viskas, kas nepatenka į [a-z0-9], virsta brūkšneliu. Įrankis aptinka tokius raštus ir įspėja, kai pasirinktas režimas greičiausiai veiks ne taip, kaip norėjai.

Patarimai ir geroji praktika

Naudok Nuimti žmogui skaitomam tekstui, kuriame ligatūros turi likti (autorių pavardės, bibliografinis rikiavimas). Naudok Transliteruoti, kai tolesniam kodui reikia gryno ASCII (senos sistemos, identifikatoriai).
Šlaugo režimas natūraliai dera su teksto į šlaugą generatoriumi — rinkis jį, kai iš antraščių kuri URL kelius.
Užvesk pelę ant bet kurio paryškinto simbolio rezultate ir pamatysi, kas tiksliai pakeista.
Numesk .txt failą tiesiai ant įvesties lango — nėra jokio įkėlimo žingsnio, failas skaitomas lokaliai.
Spustelėk Kopijuoti dalinamąją nuorodą, kad įvestis ir režimas būtų užkoduoti URL — atsidaręs nuorodą, kitas žmogus pamatys tą patį scenarijų.
Kirilica, graikų, arabų, CJK ir kiti nelotyniški raštai nuėmimo bei transliteracijos režimuose praeina nepakitę. Perjunk į šlaugą, jei reikia gryno ASCII.

Dažniausiai užduodami klausimai

Ką iš tikrųjų daro Nuėmimo režimas?

Jis paleidžia Unicode NFD normalizavimą — kiekvieną simbolį suskaido į bazinę raidę ir jungiamuosius ženklus — tada ištrina kiekvieną jungiamąjį ženklą iš U+0300 iki U+036F ruožo. café virsta cafe; DvořákDvorak. Skyryba, tarpai, skaitmenys ir nelotyniški raštai lieka nepaliesti.

ß (vokiškasis aštrusis s), æ, œ, ø, ł, þ, ð Unicode'e yra atominiai simboliai — jie neturi skaidinio į bazinę raidę ir jungiamąjį ženklą, todėl NFD jų neliečia. Perjunk į Transliteracijos režimą, kad paverstum juos į ASCII (ß→ss, æ→ae, ø→o, …).

Kai reikia URL arba failų sistemai saugaus identifikatoriaus. Šlaugo režimas transliteruoja, verčia į mažąsias raides ir kiekvieną nealfanumerinių simbolių seką pakeičia vienu brūkšneliu. "Crème Brûlée & Co." virsta "creme-brulee-co".

Nuėmimo ir Transliteracijos režimuose — ne: šie raštai nenaudoja lotyniškų jungiamųjų diakritikų, todėl NFD neturi ką šalinti, o rankomis sudaryta lentelė apima tik lotyniškas ligatūras. Šlaugo režimas juos taip pat pašalina, nes viskas, kas nepatenka į [a-z0-9], virsta brūkšneliu. Įrankis įspėja, kai tai greičiausiai nustebins.

Ne. Diakritikų šalinimas arba ß→ss pakeitimas sunaikina informaciją — kelios skirtingos įvestys gali duoti vienodą rezultatą, todėl iš išvalyto teksto originalo atkurti neįmanoma. Visada išsaugok pradinį tekstą, jei jo prireiks vėliau.

Ne. Viskas vyksta lokaliai JavaScript kalba — įvestis, transformacija, failų įmetimas ir dalinamosios nuorodos kodavimas. Užtenka uždaryti skirtuką, kad viskas dingtų. Dalinamoji nuoroda apima tik tą tekstą, kurį pats nusprendei kopijuoti.