在括号之间获取值

时间:2018-08-01 19:07:36

标签: c# regex

我需要获取位于开括号和闭括号之间的所有字符串。字符串示例如下

  

[CDATA [[[(MyTag),xi(Tag2)] OT(OurTag3)。

输出必须是包含MyTagTag2OurTag3的数组,即字符串需要删除括号。

下面的代码有效,但保留括号。如何调整正则表达式模式以从输出中删除括号?

string pattern = @"\(([^)]*)\)";
string MyString = "[CDATA[[(MyTag),xi(Tag2) ]OT(OurTag3)";
Regex re = new Regex(pattern);
foreach (Match match in re.Matches(MyString))
{
    Console.WriteLine(match.Groups[1]); // print the captured group 1
}

1 个答案:

答案 0 :(得分:0)

您应该可以使用以下内容:

(?<=\().+?(?=\))

(?<=()-对(

。*? -内容的非贪婪匹配

(?=))-积极向前看