Création de sites Internet et développement en France

Depuis 2005, ABC IDEA répond, résout, expertise et développe pour tous ses clients.

Pour plus d'informations, contactez-nous au  09 52 24 95 70.

Articles >  JQuery

Fonction JavaScript pour enlever les accents d'un texte

Présentation de la fonction stripAccents

La fonction stripAccents() en JavaScript permet de supprimer les accents des lettres dans une chaîne de caractères. C’est utile pour la normalisation des données, les comparaisons de chaînes ou le référencement.

Code de la fonction

function stripAccents(str) { 
    if (typeof str !== 'undefined') {
        var rExps = [ 
            {re:/[\xC0-\xC6]/g, ch:'A'}, 
            {re:/[\xE0-\xE6]/g, ch:'a'}, 
            {re:/[\xC8-\xCB]/g, ch:'E'}, 
            {re:/[\xE8-\xEB]/g, ch:'e'}, 
            {re:/[\xCC-\xCF]/g, ch:'I'}, 
            {re:/[\xEC-\xEF]/g, ch:'i'}, 
            {re:/[\xD2-\xD6]/g, ch:'O'}, 
            {re:/[\xF2-\xF6]/g, ch:'o'}, 
            {re:/[\xD9-\xDC]/g, ch:'U'}, 
            {re:/[\xF9-\xFC]/g, ch:'u'}, 
            {re:/[\xC7-\xE7]/g, ch:'c'},
            {re:/[\xD1]/g, ch:'N'}, 
            {re:/[\xF1]/g, ch:'n'} 
        ]; 
        for (var i = 0, len = rExps.length; i < len; i++) {
            str = str.replace(rExps[i].re, rExps[i].ch);
        }
        return str; 
    }
};

Exemple d’utilisation

let original = "Élève à l’université de São Paulo";
let clean = stripAccents(original);
console.log(clean);

Résultat obtenu

Eleve a l'universite de Sao Paulo

Pourquoi supprimer les accents ?

  • Pour uniformiser les données en base (recherche, tri, URL friendly...)
  • Pour simplifier la gestion des chaînes multilingues
  • Pour créer des slugs ou des alias SEO

Alternative native (plus récente)

Si vous ciblez les navigateurs modernes, vous pouvez aussi utiliser normalize() :

str.normalize("NFD").replace(/[\u0300-\u036f]/g, "")

Mais attention, cette méthode ne fonctionne pas sur tous les systèmes Unicode étendus et n’est pas supportée par tous les anciens navigateurs.

Compatibilité

La fonction stripAccents fonctionne même sur des navigateurs anciens car elle repose uniquement sur les expressions régulières.

Besoin d'un site Internet ?
Prenez la bonne décision.

Contactez-nous au ​09 52 24 95 70.