是否可以防止 Trim() 删除 space?
Is it possible to prevent Trim() from removing a space?
这似乎是一个奇怪的问题,但是有没有什么方法可以将 space 放入字符串中,使得 Trim()
不会删除它?
例如例如,我希望输出为 "Hello, World "
(这就是我希望它显示的方式)。
显而易见的答案是,不要调用 Trim()
,不幸的是,在这种情况下,我将字符串传递到一个库(我没有源代码)并且该库正在执行修剪。
也许有一个字符看起来像 space 但实际上不是,所以不会被修剪?或者一些不可见的字符放在字符串的末尾?
使用不同的写法 space,它可能适合你,也可能不适合你
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
这似乎是一个奇怪的问题,但是有没有什么方法可以将 space 放入字符串中,使得 Trim()
不会删除它?
例如例如,我希望输出为 "Hello, World "
(这就是我希望它显示的方式)。
显而易见的答案是,不要调用 Trim()
,不幸的是,在这种情况下,我将字符串传递到一个库(我没有源代码)并且该库正在执行修剪。
也许有一个字符看起来像 space 但实际上不是,所以不会被修剪?或者一些不可见的字符放在字符串的末尾?
使用不同的写法 space,它可能适合你,也可能不适合你
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