【问题标题】:Is there a way to remove spaces getting counted as a character?有没有办法删除被算作一个字符的空格?
【发布时间】:2020-04-26 15:05:15
【问题描述】:

我是编码新手,我想制作一个程序来计算文本文件中的字符,但我希望它只计算字母和其他符号,但每个单词之间的空格被识别为字符,有没有办法让它不把空格算作一个字符?

到目前为止我的代码:

        label2.Text = richTextBox1.Text.Length.ToString();

【问题讨论】:

标签: c# winforms


【解决方案1】:

你可以使用多种方式

1) 通过正则表达式

Regex.Replace(richTextBox1.Text, @"\s+", "").Length

2) 使用 LINQ

label2.Text  = richTextBox1.Text.Where(s => s != ' ').ToArray<char>().Count()

【讨论】:

    【解决方案2】:

    此代码取自 Yonatan 的链接:Length of string WITHOUT space

    label2.Text = richTextBox1.Text.Count(c => !Char.IsWhiteSpace(c)).ToString();
    

    【讨论】:

    • @corzan:从下次开始,请在 Google 上搜索您的问题或在 StackOverflow 上搜索它,并避免提出以前提出的问题。
    • 我尝试使用您的解决方案,但它不起作用,因为我无法将 int 转换为字符串。
    • @corzan:请尝试我更新的代码并恢复任何错误。(希望没有:))
    【解决方案3】:

    这对我来说很好用:

    label2.Text = richTextBox1.Text.Replace(" ", "").Length.ToString();
    

    DotNetFiddle

    【讨论】:

      猜你喜欢
      • 2018-02-11
      • 2011-11-15
      • 1970-01-01
      • 2021-05-17
      • 2010-12-05
      • 2020-09-04
      • 2012-12-20
      • 1970-01-01
      相关资源
      最近更新 更多