是否可以防止Trim()删除空格?

时间:2020-02-13 09:04:39

标签: c# string trim

这似乎是一个奇怪的问题,但是有没有办法以Trim()不会将其放入字符串的方式?

例如我希望输出为"Hello, World "(这就是我希望其显示的方式)。

一个明显的答案是,不要调用Trim(),不幸的是,在这种情况下,我正在将字符串传递到一个库中(我没有源代码),而该库正在进行修整。

也许有一个看起来像空格的字符,但不是真的,因此不会被修剪吗?还是在字符串末尾添加一些不可见的字符?

1 个答案:

答案 0 :(得分:6)

使用其他写空间,它可能对您不起作用

var str = "test    ";
var str2 = str.Replace(" ", "\u00A0");

其中任何一个真的

U+00A0  NO-BREAK SPACE  
U+1680  OGHAM SPACE MARK
U+180E  MONGOLIAN VOWEL SEPARATOR
U+2000  EN QUAD 
U+2001  EM QUAD 
U+2002  EN SPACE (nut)  
U+2003  EM SPACE (mutton)   
U+2004  THREE-PER-EM SPACE (thick space)    
U+2005  FOUR-PER-EM SPACE (mid space)   
U+2006  SIX-PER-EM SPACE    
U+2007  FIGURE SPACE    
U+2008  PUNCTUATION SPACE   
U+2009  THIN SPACE  
U+200A  HAIR SPACE  
U+200B  ZERO WIDTH SPACE    
U+202F  NARROW NO-BREAK SPACE   
U+205F  MEDIUM MATHEMATICAL SPACE
U+3000  IDEOGRAPHIC SPACE   
U+FEFF  ZERO WIDTH NO-BREAK SPACE