1058 shaares
75 liens privés
75 liens privés
public static class StringExtensions
{
/// <summary>
/// Removes diacritics from the specified text.
/// </summary>
/// <param name="text">The text to remove diacritics from</param>
/// <returns>A new version of the text with diacritics removed</returns>
public static string RemoveDiacritics(this string text)
{
string normalizedString = text.Normalize(NormalizationForm.FormD);
var stringBuilder = new StringBuilder(normalizedString.Length);
foreach (char c in normalizedString)
{
if (CharUnicodeInfo.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark)
{
stringBuilder.Append(c);
}
}
return stringBuilder.ToString();
}
}
pour aller plus loin
string diacriticCharacterText = "ÆßðáèîõüЌ؜";
string plainCharacterText = new string(diacriticCharacterText
.RemoveDiacritics()
.Where(char.IsAscii)
.ToArray());