为什么模式与RegEx.Matches中的匹配一起打印

时间:2016-08-18 12:02:08

标签: c# regex

我在c#中有一些正则表达式问题。

我的代码

string str ="1+44+(2+3)";
string pattern = @"((\d+)|[+*-/()])";

foreach (Match m in Regex.Matches(str,pattern))
{
    Console.WriteLine(m.Groups[1].Value);
}

每个匹配都写在一个新的行上,但是为了节省空间,每个匹配用" ,"代替。

我希望打印结果为:

1,+,44,+,(,2,+,3,)

但是我得到了(由于某种原因包括分隔符):

1,+,44,+,(,2,+,3,),(,(,\,d,+,),|,[,+,*, - ,/,(,),] ,)

那么我如何避免在结果中包含分隔符。

1 个答案:

答案 0 :(得分:0)

这是对的。然而,我从一些旧的实验中完全错过了另一个循环。这就是当你感到压力时会发生的事情。

我很抱歉你的时间