在给定字符串

时间:2018-05-02 10:08:34

标签: c#

首先让我们粘贴代码然后我会告诉你我的要求是什么..

void Main()
{
    String someString = "Fill ________ and ______ this";
    char someChar = '_';
    int count = 0;

    for (int i = 0; i < someString.Length; i++)
    {
        if (someString[i] == someChar)
        {
            count++;
        }
    }
}

在这个片段中,我有2个占位符用_表示。 如果_一次出现超过2次,那么这被认为是该字符串中的占位符。

输入

  1. 这里有一个_。
  2. 输出

    0

    输入

    1. 这里有2个单_和_。
    2. 输出

      0

      输入

      1. 这里有1双__。
      2. 输出

        0

        输入

        1. 这里有1个tripple ___。

          输出

        2. 1

          输入

          1. 这里有1个单_,1双__和1个三元组___。

            输出

          2. 1

            输入

            填写________和______此

            输出

            2

1 个答案:

答案 0 :(得分:3)

尽管如此&#34;现在你有两个问题&#34;,这可以通过regex来解决。 _{3,}是匹配一系列至少三个下划线的模式,因此:

Regex.Matches("Fill ________ and ______ this", "_{3,}").Count

2

Regex.Matches("There are 1 single _ , 1 double __ and 1 tripple ___ here.", "_{3,}").Count

1