为什么Regex.IsMatch返回错误的值?

时间:2018-04-04 18:04:16

标签: c# regex

使用此代码,isMatch为false。

var input = "12312345023";
var isMatch = Regex.IsMatch(@"^\d{6,}", input);

如果输入="",则isMatch为true。不确定为什么它似乎与它应该是相反的。

如果我尝试相同的模式并输入here,它会按预期工作。但是,当我使用该代码启动一个新的控制台应用程序时,isMatch是不正确的。

1 个答案:

答案 0 :(得分:2)

MSDN说:

File "dtree_classifier.py", line 176, in dtree
   vals.append(entry[entry_index])

IndexError: string index out of range

由于您的参数已交换,因此您的模式为空。结果永远是真的。您需要交换参数以获得正确的结果:

public static bool IsMatch(
          string input,
          string pattern
)