【问题标题】:Stop C# string.Trim() removing FF character?停止 C# string.Trim() 删除 FF 字符?
【发布时间】:2013-09-30 04:29:15
【问题描述】:

有什么方法可以阻止string.Trim() 删除FF 字符?

我正在解析一个文件,以便能够区分只有 FF 字符的空行、带有 FF 字符的空格行和带有 FF 字符的“数据”行。

但是,如果我测试 string.Trim() == string.Empty,那么它会为所有以下结果返回 true:

"\f"
"                               "
"                             \f"

例如它还在将\f 从字符串中修剪掉?

注意:我可以使用 Regex 测试 \f,但对修剪为什么也会删除 \f 感兴趣?

【问题讨论】:

标签: c# string special-characters


【解决方案1】:

来自 MSDN:

字符串.trim

空白字符由 Unicode 标准定义。 Trim() 方法会删除所有在传递给 Char.IsWhiteSpace 方法时产生返回值 true 的前导和尾随字符。

http://msdn.microsoft.com/en-us/library/t97s7bs3.aspx

来自 Char.IsWhiteSpace

空白字符是以下 Unicode 字符:字符 CHARACTER TABULATION (U+0009)、LINE FEED (U+000A)、LINE TABULATION (U+000B)、FORM FEED (U+000C)、CARRIAGE RETURN (U +000D)、NEXT LINE (U+0085) 和 NO-BREAK SPACE (U+00A0)。

http://msdn.microsoft.com/en-us/library/t809ektx.aspx

这就是它被剥离的原因。

希望对你有帮助

【讨论】:

    【解决方案2】:

    因为它旨在删除它。见MSDN

    【讨论】:

      猜你喜欢
      • 2018-07-21
      • 1970-01-01
      • 1970-01-01
      • 2015-10-24
      • 2011-01-13
      • 1970-01-01
      • 2015-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多