我在C#中遇到了一个相当奇怪的问题,即删除空格。
我目前的代码如下:
string s = "This is a string without spaces";
s = s.Replace(" ", string.Empty);
在这个例子中,结尾的最后一个空格,在“without”之后是缩进(Tab)而不是实际的空格键空格。显然String.Replace不关心它,所以它忽略它,并在那里留下那个空格。
是否可以避免此问题?
答案 0 :(得分:4)
正则表达式。下面的“\ s”表示所有空格(例如制表符和空格)
s = Regex.Replace(s, "\\s", "", RegexOptions.None);
答案 1 :(得分:4)
是。也删除标签:
string s = "This is a string without spaces";
s = s.Replace(" ", string.Empty);
s = s.Replace("\t", string.Empty);
答案 2 :(得分:0)
您的意思是标签保留在原位?你可能还需要做
s = s.Replace("\\t", string.Empty);
编辑:我的坏,我忘记了\ s