可能重复:
如何自动删除字符串开头或结尾的所有空格
我有许多字符串需要从中修剪空格,但是我只需要从末尾删除它们。它们用于公司和个人名称,因此字符串中间可以有空格。
你可以只使用Trim()
,或者如果你只想申请到最后TrimEnd()
string s = "test ";
s = s.Trim();
s = s.TrimEnd();
String.TrimEnd
答案是——仅从字符串末尾修剪选定的字符。
注意:您应该注意 MSDN 中的文档:此方法的行为发生了重大更改,因此实际行为取决于您所针对的 .NET Framework 版本:
调用者注意事项
.NET Framework 3.5 SP1 及更早版本维护一个空白字符的内部列表,如果trimChars是null
或空数组,此方法将修剪这些空白字符。从 .NET Framework 4 开始,如果trimChars为 null 或空数组,则该方法会修剪所有 Unicode 空白字符(即,true
在传递给该方法时产生返回值的字符Char.IsWhiteSpace
)。由于此更改,Trim()
.NET Framework 3.5 SP1 及更早版本中的方法删除了两个字符,零宽度空格 (U+200B) 和零宽度无间隔空格 (U+FEFF),即Trim()
.NET Framework 4 及更高版本中的方法不会删除。此外,.NET Framework 3.5 SP1 及更早版本中的 Trim() 方法不会修剪三个 Unicode 空白字符:蒙古元音分隔符 (U+180E)、NARROW NO-BREAK SPACE (U+202F) 和 MEDIUM数学空间(U+205F)。
你可以只使用s.TrimEnd(' ');
.
如果您省略该参数,它将删除所有Unicode 空白字符(这可能是也可能不是您想要实现的)。