【问题标题】:How to correctly represent a whitespace character如何正确表示空白字符
【发布时间】:2021-05-20 15:09:19
【问题描述】:

我想知道如何在 C# 中表示空白字符。我找到了空字符串表示string.Empty。有没有类似的代表空白字符的东西?

我想做这样的事情:

test.ToLower().Split(string.Whitespace)
//test.ToLower().Split(Char.Whitespace)

【问题讨论】:

标签: c#


【解决方案1】:

哪个空格字符?空字符串非常明确 - 它是 0 个字符的序列。但是," ""\t""\n" 都是包含单个字符的字符串,该字符被表征为空格。

如果您只是指空格,请使用空格。如果您指的是其他空白字符,则很可能有一个自定义转义序列(例如,"\t" 用于制表符),或者您可以使用 Unicode 转义序列("\uxxxx")。我不鼓励您在源代码中包含非 ASCII 字符,尤其是空白字符。

编辑:既然您已经解释了您想要做什么(这应该是您的问题开始),您最好使用 Regex.Split 和代表空格的正则表达式 \s

Regex regex = new Regex(@"\s");
string[] bits = regex.Split(text.ToLower());

有关其他字符类的更多信息,请参阅Regex Character Classes 文档。

【讨论】:

  • 嗨,我指的是这个帖子stackoverflow.com/questions/6111298/…。因为我有同样的问题。我有一个 csv 文件,其中空间与拆分函数中的“”不匹配。如果存在,我想将 string.Whitespace 放入函数中。
  • @Luke101:如果你一开始就说完这一切,那将会很有用。查看我的编辑 - 基本上你应该使用正则表达式。
  • 完美,正是我需要的。很抱歉对于这个误会。将来会澄清帖子。
【解决方案2】:

不,没有这样的常数。

【讨论】:

    【解决方案3】:

    可以使用 ASCII Codes here. 引用 WhiteSpace CHAR 而Character#32代表一个空格,因此:

    char space = (char)32;
    

    例如,您可以使用这种方法在任意位置生成所需数量的空白:

    int _length = {desired number of white spaces}
    string.Empty.PadRight(_length, (char)32));
    

    【讨论】:

      【解决方案4】:

      所以我遇到了同样的问题,所以我所做的是创建一个带有空格的字符串,然后只索引字符。

      String string = "Hello Morning Good Night";
      
      char empty =  string.charAt(5);
      

      现在每当我需要一个空字符时,我都会从内存中的引用中提取它。

      【讨论】:

        【解决方案5】:

        哪个空白字符?最常见的是普通空格,它位于我句子中的每个单词之间。这只是" "

        【讨论】:

        • 我在 c# 中使用 'SPACE' 而不是 "SPACE" 来表示空格字符
        • ' 'char" "string。在Split 的上下文中,char 可能是您想要使用的。所以是的,你是对的
        【解决方案6】:

        使用正则表达式,您可以用元字符“\s”表示任何空白字符

        MSDN Reference

        【讨论】:

          【解决方案7】:

          你总是可以使用 Unicode 字符,对我个人来说这是最清晰的解决方案:

          var space = "\u0020"
          

          【讨论】:

            猜你喜欢
            • 2020-01-23
            • 1970-01-01
            • 2018-05-03
            • 1970-01-01
            • 2021-10-11
            • 2021-11-29
            • 1970-01-01
            • 2010-12-21
            • 1970-01-01
            相关资源
            最近更新 更多