IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
blablabla
Člen
Avatar
blablabla:20.2.2015 17:41

Ahoj,
potřeboval bych poradit s automatickým generováním URL. Všechno mi docela funguje až na odstranění diakritiky. To nemám vůbec.

Vstup:
Příliš žluťoučký kůň úpěl ďábelské ódy.
Výstup:
prilis-zlutoucky-kun-upel-dabelske-ody

Můj dosavadní kód:

url = url.toLowerCase().replace(/[^\w ]+/g, '').replace(/ +/g, '-');

Ten kód až na tu diakrtitiku, kterou vynechává, funguje.

 
Odpovědět
20.2.2015 17:41
Avatar
shaman
Člen
Avatar
shaman:20.2.2015 19:33

Na odstranenie diakritiky nie je funkcia v jQuery. Riesi sa to tak ze si namapujes pismeno k pismenu a potom si spravis loop ktory ti prebehne cely tvoj text pismenko po pismenku a porovnava mapovanie. Ak najde tvoj znak s diakritikou tak ho zameni. Odporucam si to spravit, je to dobre cvicenie prace s poliami.
.
.
.
Ak ale nemas cas :) tak si stiahni tento subor

https://raw.githubusercontent.com/mplatt/fold-to-ascii-js/master/fold-to-ascii.js

a pridaj si do svojho suboru ako script:

<script type="text/javascript" src="fold-to-ascii.js"></script>

Je to funkcia v ktorej to uz mas namapovane. Teraz mozes pozivat funkciu foldToASCII asi takto

url = foldToASCII(url.toLowerCase().replace(/\ /g, '-').replace(/\./g, ''));
Akceptované řešení
+20 Zkušeností
Řešení problému
Nahoru Odpovědět
20.2.2015 19:33
try {...} catch (Exception ignored) { echo " ¯\_(ツ)_/¯ "; }
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.