: Home / JavaScript / artykuły / Usuwanie polskich znaków diakrytycznych

Warning: file_get_contents(http://graph.facebook.com/http://youthcoders.net/javascript/artykuly/1135-usuwanie-polskich-znakow-diakrytycznych.html): failed to open stream: HTTP request failed! HTTP/1.0 403 Forbidden in /var/www/old-yc/plugins/content/addthis.php on line 38
Usuwanie polskich znaków diakrytycznych
Ocena użytkowników: / 6
SłabyŚwietny 
Wpisany przez Patryk yarpo Jar   
niedziela, 09 października 2011 14:00

Znaki diakrytyczne, czyli popularnie zwane ogonki są częstą zmorą programistów. Ą, ć, ś, ę, ł, Ó, Ź, itp. niestety dają o sobie znać w najgorszych momentach.

Co zrobić aby pozbyć się polskich znaków diakrytycznych z ciągu znaków? Podmienić je na polskie odpowiedniki. Oto przykładowe rozwiązanie:

String.prototype.escapeDiacritics = function()
{
    return this.replace(/ą/g, 'a').replace(/Ą/g, 'A')
        .replace(/ć/g, 'c').replace(/Ć/g, 'C')
        .replace(/ę/g, 'e').replace(/Ę/g, 'E')
        .replace(/ł/g, 'l').replace(/Ł/g, 'L')
        .replace(/ń/g, 'n').replace(/Ń/g, 'N')
        .replace(/ó/g, 'o').replace(/Ó/g, 'O')
        .replace(/ś/g, 's').replace(/Ś/g, 'S')
        .replace(/ż/g, 'z').replace(/Ż/g, 'Z')
        .replace(/ź/g, 'z').replace(/Ź/g, 'Z');
}
// przykładowe wykorzystanie:
var test = new String("ąźĘŹĆŚół");
alert(test.escapeDiacritics());

Wykorzystałem tu mechanizm prototypów, dzięki czemu każdy ciąg znaków w Twoich skryptach, po dodaniu powyższego kodu będzie "widział" nową metodę. Poczytaj o rozszerzaniu obiektu.

Ogonkowy usuwacz online

Przykładowe zastosowanie powyższego kodu:

Miłej zabawy z kodem :)

Pokazany w tym artykule skrypt nie jest najoptymalniejszym rozwiązaniem. Szybszy algorytm zaproponował Piotrek Reinmar Koszuliński w komentarzu do wpisu na moim blogu.

Warto przeczytać:

 

Dodaj komentarz


Kod antysapmowy
Odśwież