循环直到字符串C结束#

时间:2014-07-18 12:52:37

标签: c# regex

我有一个字符串(输入由用户执行),其中有一个表达式要对正则表达式模式匹配器进行检查。

我想循环遍历字符串直到EOF。我在考虑使用input.Length,但后来我不知道如何继续比较这个数字。如果整个字符串对模式是正确的,那么它返回TRUE,否则返回FALSE。这是我到现在为止的地方。

private void checkInput (String input)
{
    {
        String acceptedInput = "(?=\\()|(?<=\\)\\d)";

        // Need a loop until End of String

        // (while ?)
        {
            foreach (Match match in Regex.Matches(input, acceptedInput))
            {
                outputDialog.AppendText("Correct");
            }

            return true;

        }

        return false;
    }
}

有什么办法可以吗?

谢谢

3 个答案:

答案 0 :(得分:1)

循环遍历字符串中的每个字符:

for (int i = 0; i < stringVariable.Length; i++)
{
    char x = stringVariable[i]; //is the i'th character of the string
}

但是如果您使用RegEx(通常可以处理整个字符串),那么这种方法毫无意义。

也许解释一下你想要实现的目标?

答案 1 :(得分:1)

使用String.ToCharArray

即。

    char[] array = input.ToCharArray();
    for (int i = 0; i < array.Length; i++)
    {       
        var letter = array[i];//here is the individual character
    }

答案 2 :(得分:0)

你不需要循环:

string toAvoid = "$%&#";
if (input.IndexOfAny(toAvoid.ToCharArray()) != -1)
{
  // the input contains forbidden characters
}