Přeskočit na obsah

Odstranění diakritiky z textu

Vložte text a hned dostanete verzi bez háčků a čárek. Řádky, čísla i velká písmena zůstanou, jak byly.

Kdy se hodí text bez diakritiky

Diakritika patří do běžného textu. V těchto situacích se ale hodí text bez ní a někdy je přímo povinný:

SMS zprávy

Písmena jako č, ř nebo ý nejsou v základní SMS abecedě. Jedna zpráva s nimi má jen 70 znaků místo 160, takže delší text se rozdělí do více SMS.

Jméno na letence a v rezervacích

Letecké společnosti a rezervační systémy diakritiku nepoužívají. Jméno zadejte bez ní, přesně jako ve strojově čitelné části pasu, například Dvorak místo Dvořák.

Názvy souborů a složek

Soubor Žádost.docx se po odeslání e-mailem nebo nahrání na server může zobrazit s rozbitými znaky. Název bez diakritiky projde všude beze změny.

Excel, CSV a importy

Starší účetní, skladové nebo bankovní systémy diakritiku při importu poškodí. Celý sloupec upravíte najednou, řádky i sloupce zůstanou na místě.

Titulky k filmům

Některé starší televize a DVD přehrávače nezobrazí v titulcích č nebo ř správně. Titulky bez diakritiky se přečtou všude.

Přihlašovací jména, e-maily a kód

E-mailové adresy, uživatelská jména a proměnné v kódu se píšou bez diakritiky. Ze jména Jiří Dvořák tak rychle dostanete Jiri Dvorak.

Příklady před úpravou a po ní

Nástroj mění jen písmena s diakritikou. Velká písmena, čísla, interpunkce i zalomení řádků zůstanou.

Příklady před úpravou a po ní Původně Bez diakritiky
SMS Ahoj, budu tam za 10 minut. Koupíš chleba? Ahoj, budu tam za 10 minut. Koupis chleba?
Jméno na letenku Jiří Dvořák Jiri Dvorak
Název souboru Žádost o dovolenou - červenec.docx Zadost o dovolenou - cervenec.docx
Sloupec z Excelu Plzeň České Budějovice Ústí nad Labem Plzen Ceske Budejovice Usti nad Labem

Jak odstranit diakritiku v Excelu

Nejrychleji: přes tento nástroj

Označte v Excelu sloupec nebo celou tabulku, zkopírujte ji do pole výše a výsledek vložte zpět. Řádky i sloupce zůstanou na svém místě, změní se jen písmena s diakritikou.

Vzorcem přímo v Excelu

Pokud potřebujete, aby se text upravoval automaticky, vložte tento vzorec do buňky vedle textu. Odstraní českou diakritiku z buňky A2 a funguje v každé verzi Excelu.

=DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(DOSADIT(A2;"á";"a");"č";"c");"ď";"d");"é";"e");"ě";"e");"í";"i");"ň";"n");"ó";"o");"ř";"r");"š";"s");"ť";"t");"ú";"u");"ů";"u");"ý";"y");"ž";"z");"Á";"A");"Č";"C");"Ď";"D");"É";"E");"Ě";"E");"Í";"I");"Ň";"N");"Ó";"O");"Ř";"R");"Š";"S");"Ť";"T");"Ú";"U");"Ů";"U");"Ý";"Y");"Ž";"Z")
  • Vzorec stáhněte dolů a upraví celý sloupec. Místo A2 můžete zadat libovolnou buňku.
  • V anglickém Excelu a v Google Tabulkách napište místo DOSADIT název SUBSTITUTE, zbytek vzorce zůstává stejný.
  • Pokud Excel hlásí chybu ve vzorci, nahraďte středníky čárkami. Oddělovač závisí na nastavení jazyka a oblasti.
  • Vzorec zná jen česká písmena. Pro slovenské, polské nebo maďarské znaky použijte nástroj výše, ten zvládne všechny.

Odstranění diakritiky v kódu

Pokud diakritiku odstraňujete ve vlastní aplikaci, tyto ukázky dají stejný výsledek jako nástroj výše. Každou jsme spustili na jménu Jiří Dvořák.

JavaScript

const removeDiacritics = (text) => text
    .normalize('NFD')
    .replace(/[\u0300-\u036f]/g, '')
    .replace(/ł/g, 'l')
    .replace(/Ł/g, 'L');

console.log(removeDiacritics('Jiří Dvořák'));

Výsledek: Jiri Dvorak. Bez knihovny v prohlížeči i v Node.js. Písmeno ł se na základní písmeno a diakritiku nerozkládá, proto ho ukázka nahrazuje zvlášť. Stejně byste doplnili třeba ß.

Python

import unicodedata

def remove_diacritics(text):
    text = unicodedata.normalize('NFD', text)
    text = ''.join(c for c in text if not unicodedata.combining(c))
    return text.replace('ł', 'l').replace('Ł', 'L')

print(remove_diacritics('Jiří Dvořák'))

Výsledek: Jiri Dvorak. Používá jen standardní knihovnu unicodedata, nic není potřeba instalovat.

PHP

echo transliterator_transliterate('Any-Latin; Latin-ASCII', 'Jiří Dvořák');

Výsledek: Jiri Dvorak. Potřebuje rozšíření intl. Kromě diakritiky převede i typografické uvozovky a pomlčky na obyčejné znaky.

Co nástroj změní a co ne

Z písmen jako á, č, ľ, ř, ů, ą, ł, ő nebo ű odstraní diakritická znaménka a převede i speciální znaky, například ß na ss nebo æ na ae. Velká písmena, čísla, mezery, tabulátory, zalomení řádků, interpunkce, emoji a znaky jiných písem zůstanou beze změny. Text se zpracuje ve vašem prohlížeči a nikam se neodesílá.

FAQ

Co znamená text bez diakritiky?

Je to text bez háčků, čárek a kroužků nad písmeny. Místo č píšete c, místo á píšete a, místo ů píšete u. Takto se píše například v SMS, v e-mailových adresách nebo na letenkách.

Proč má SMS s diakritikou méně znaků?

Běžná SMS používá základní abecedu GSM, do které se vejde 160 znaků. Většina písmen s háčkem nebo čárkou (č, ř, š, ž, ý, ů...) v ní není. Když je zpráva obsahuje, telefon ji pošle v jiném kódování a jedna SMS má jen 70 znaků. Nástroj výše vám ukáže, kolik SMS ušetříte.

Jak napsat jméno na letenku bez diakritiky?

Vynechte háčky a čárky: Jiří Dvořák napíšete jako Jiri Dvorak. Řiďte se strojově čitelnou částí pasu, tedy dvěma řádky se znaky < dole na straně s fotkou. Pokud je jméno zapsané v ní jinak, použijte tento zápis.

Jak odstranit diakritiku v Excelu?

Nejrychleji tak, že sloupec zkopírujete do nástroje výše a výsledek vložíte zpět. Pokud chcete, aby se text upravoval sám, použijte vzorec s funkcí DOSADIT uvedený výše na této stránce.

Dá se diakritika do textu doplnit zpět?

Automaticky jen přibližně, protože některá slova se bez diakritiky píšou stejně: byt a být, pas a pás, rada a ráda. Pro doplnění diakritiky do českého textu zkuste czaccent z Fakulty informatiky Masarykovy univerzity. Výsledek si vždy přečtěte.

Zůstanou zachované řádky, tabulátory a velká písmena?

Ano. Změní se jen písmena s diakritikou. Proto můžete vložit i celou tabulku z Excelu a vrátit ji zpět bez rozházení.

Které jazyky nástroj zvládne?

Všechny jazyky psané latinkou, například češtinu, slovenštinu, polštinu, maďarštinu, němčinu, francouzštinu nebo rumunštinu. Kromě znamének převede i speciální písmena jako ł, ß, æ, ø nebo đ.

Odesílá se můj text někam?

Ne. Převod probíhá přímo ve vašem prohlížeči, text se neodesílá na server a nikde se neukládá.

Jaký je rozdíl oproti generátoru slugů?

Tento nástroj jen odstraní diakritiku a všechno ostatní nechá být. Generátor slugů navíc změní písmena na malá, vyhodí interpunkci a mezery nahradí pomlčkami, aby vznikla URL adresa.