Я хочу удалить все специальные символы из строки. Допустимые символы: A-Z (верхний или нижний регистр), цифры (0-9), подчеркивание (_), пробел(), pecentage (%) или знак точки (.).
Я пробовал это:
StringBuilder sb = new StringBuilder();
foreach (char c in input)
{
if ((c >= '0' && c <= '9') || (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') | c == '.' || c == '_' || c == ' ' || c == '%')
{ sb.Append(c); }
}
return sb.ToString();
И это:
Regex r = new Regex("(?:[^a-z0-9% ]|(?<=['\"])s)", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant | RegexOptions.Compiled);
return r.Replace(input, String.Empty);
Но ничего не работает. Любая помощь будет оценена.
Спасибо!