Ответ 1
Да. также удалите вкладки:
string s = "This is a string without spaces";
s = s.Replace(" ", string.Empty);
s = s.Replace("\t", string.Empty);
Я столкнулся с довольно странной проблемой в С# вокруг удаления пробелов.
Мой текущий код выглядит следующим образом:
string s = "This is a string without spaces";
s = s.Replace(" ", string.Empty);
В этом примере последние пробелы в конце, после "без" - это отступ (Tab), а не пробелы пробела. По-видимому, String.Replace не заботится об этом, поэтому он игнорирует его и оставляет там пробелы.
Можно ли избежать этой проблемы?
Да. также удалите вкладки:
string s = "This is a string without spaces";
s = s.Replace(" ", string.Empty);
s = s.Replace("\t", string.Empty);
Регулярные выражения. "\ S" ниже означает все пробелы (например, табуляции и пробелы)
s = Regex.Replace(s, "\\s", "", RegexOptions.None);
Вы имеете в виду, что вкладка остается на месте? Вам, вероятно, также нужно будет
s = s.Replace("\\t", string.Empty);
edit: мой плохой, я забыл о\s