String - RemoveDiacritics
A string extension method that removes the diacritics character from the strings.
public static void Main() { string input = "Ёntity framёwork"; Console.WriteLine(input); //C# Extension Method: String - RemoveDiacritics var output = input.RemoveDiacritics(); Console.WriteLine(output); }
View Source
using System.Globalization; using System.Text; public static partial class Extensions { /// <summary> /// A string extension method that removes the diacritics character from the strings. /// </summary> /// <param name="this">The @this to act on.</param> /// <returns>The string without diacritics character.</returns> public static string RemoveDiacritics(this string @this) { string normalizedString = @this.Normalize(NormalizationForm.FormD); var sb = new StringBuilder(); foreach (char t in normalizedString) { UnicodeCategory uc = CharUnicodeInfo.GetUnicodeCategory(t); if (uc != UnicodeCategory.NonSpacingMark) { sb.Append(t); } } return sb.ToString().Normalize(NormalizationForm.FormC); } }