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