Есть ли лучший способ сделать это ...
MyString.Trim().Replace("&", "and").Replace(",", "").Replace(" ", " ")
.Replace(" ", "-").Replace("'", "").Replace("/", "").ToLower();
Я расширил класс String, чтобы сократить его до одной задачи, но есть ли более быстрый способ?
public static class StringExtension
{
public static string clean(this string s)
{
return s.Replace("&", "and").Replace(",", "").Replace(" ", " ")
.Replace(" ", "-").Replace("'", "").Replace(".", "")
.Replace("eacute;", "é").ToLower();
}
}
Просто для удовольствия (и чтобы остановить аргументы в комментариях) я поднял суть, сравнивая различные примеры ниже.
Опция регулярного выражения очень популярна; вариант со словарем подходит быстрее всего; длинная версия замены струнного конструктора немного быстрее, чем короткая.