« Configuration SMTP dans le web.config | Page d'accueil | Liens .Net »

2007.12.02

Suppression des accents

Je suis tombé sur ce site qui propose une méthode pour supprimer les accents d'une chaine de caractères, sans pour autant utiliser de String.Replace, ni d'expression régulière :

static string RemoveDiacritics(string stIn)
{
    string stFormD = stIn.Normalize(NormalizationForm.FormD);
    StringBuilder sb = new StringBuilder();

    for(int ich = 0; ich < stFormD.Length; ich++) {
        UnicodeCategory uc = CharUnicodeInfo.GetUnicodeCategory(stFormD[ich]);
      if(uc != UnicodeCategory.NonSpacingMark) {
          sb.Append(stFormD[ich]);
      }
    }

    return(sb.ToString().Normalize(NormalizationForm.FormC));
}

Cela peut s'avérer utilise lorsqu'on fait de l'UrlRewriting, ou dès lors que l'on souhaite formaliser des données saisies par l'utilisateur.

A tester donc... 

Publié dans Tips | Lien permanent