¿Hay una mejor manera de hacer esto ...
MyString.Trim().Replace("&", "and").Replace(",", "").Replace(" ", " ")
.Replace(" ", "-").Replace("'", "").Replace("/", "").ToLower();
He ampliado la clase de cadena para mantenerla en un solo trabajo, pero ¿hay una forma más rápida?
public static class StringExtension
{
public static string clean(this string s)
{
return s.Replace("&", "and").Replace(",", "").Replace(" ", " ")
.Replace(" ", "-").Replace("'", "").Replace(".", "")
.Replace("eacute;", "é").ToLower();
}
}
Solo por diversión (y para detener los argumentos en los comentarios), hice una evaluación comparativa de los diversos ejemplos a continuación.
La opción de expresiones regulares puntúa terriblemente; la opción de diccionario es la más rápida; la versión larga de la sustitución de stringbuilder es ligeramente más rápida que la mano corta.