Odstranění diakritiky v proměnné

Odstranění diakritiky v proměnné
« kdy: 24. 10. 2022, 12:23:20 »
Ahoj,

potřeboval bych z proměnné odstranit resp. nahradit znaky s diakritikou  proměnné. Našel jsem něco jako toto iconv což by mělo odstranit diakritiku z proměnné, ale v Dockeru s Alpine Linuxem to nefunguje viz:

/ # echo "ščřžý" | iconv -f UTF-8 -t ASCII//TRANSLIT
iconv: destination charset ASCII//TRANSLIT: Invalid argument

Zkoušel jsem hledat řešení této chyby ale nic funkčního jsem nenašel.

Existuje nějaké elegantní řešení pro odstranění diakritiky?

Děkuji


Re:Odstranění diakritiky v proměnné
« Odpověď #1 kdy: 24. 10. 2022, 12:27:26 »
V Debianu výše uvedený příkaz funguje normálně ale v Alpine linuxu to píše chybu.

3ugeene

Re:Odstranění diakritiky v proměnné
« Odpověď #2 kdy: 24. 10. 2022, 12:50:19 »

k3dAR

  • *****
  • 3 009
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Odstranění diakritiky v proměnné
« Odpověď #3 kdy: 24. 10. 2022, 14:03:58 »
nevim zda v alpine@docker, ale zkus:
Kód: [Vybrat]
echo "ščřžý" | uni2ascii -q -d

Re:Odstranění diakritiky v proměnné
« Odpověď #4 kdy: 24. 10. 2022, 14:53:19 »
nevim zda v alpine@docker, ale zkus:
Kód: [Vybrat]
echo "ščřžý" | uni2ascii -q -d

BusyBox (tedy i Alpine Linux) uni2ascii neimplementuje. I třeba v Arch Linuxu je to jen balíček v AUR.


D.A. Tiger

  • ****
  • 486
  • Tygr, který žere tučňáka ;-)
    • Zobrazit profil
    • E-mail
Re:Odstranění diakritiky v proměnné
« Odpověď #5 kdy: 02. 11. 2022, 23:20:51 »
Co zkusit obycejny sed?
Kód: [Vybrat]
echo "ýščřž" | sed 'y/ščřžý/scrzy/'

hknmtt

Re:Odstranění diakritiky v proměnné
« Odpověď #6 kdy: 06. 11. 2022, 22:12:47 »
hladaj "transliteration"