C#正则表达式匹配总是返回false

时间:2016-04-06 13:46:19

标签: c# regex match

以下是我对c#regex匹配的测试用例:

AAA
BB
AAA+15d
BB-205w

我使用的模式是:@"^(AAA|BB)([\+|\-]\d+[d|w])*$",当我在某个.net正则表达式测试器中在线测试时,它表示匹配。但是当我在c#代码中运行它时,总是在最后两个测试用例中返回false。模式有什么问题?

1 个答案:

答案 0 :(得分:1)

我无法重现上述行为

List<string> Input = new List<string>() { "AAA", "BB", "AAA+15d", "BB-205w" };
string Pattern = @"^(AAA|BB)([+-]\d+[dw])*$";
foreach (string item in Input)
{
    Console.WriteLine(Regex.IsMatch(item, Pattern));
}

结果:

True 
True 
True 
True