C# 用正则表达式拆分

C# 用正则表达式拆分,c#,regex,C#,Regex,如何使用不属于括号内字符串的字符拆分字符串 例如: (ab);(cd)与(;)==>(ab)和(cd) (ab;cd);(abcd)与(;)==>(ab;cd)和(abcd) 我找不到这个问题的正则表达式解决方案 感谢您的帮助试试: Regex.Split(s, @"(;(?!(\w*\))))") @(? string str = "(ab;cd);(abcd)"; string[] arr = Regex.Split(str, @"(?<=\));(?=\()"); foreac

如何使用不属于括号内字符串的字符拆分字符串

例如:

(ab);(cd)
与(;)==>
(ab)
(cd)

(ab;cd);(abcd)
与(;)==>
(ab;cd)
(abcd)

我找不到这个问题的正则表达式解决方案 感谢您的帮助

试试:

Regex.Split(s, @"(;(?!(\w*\))))")
@(?
string str = "(ab;cd);(abcd)";

string[] arr = Regex.Split(str, @"(?<=\));(?=\()");

foreach (string str in arr)
    Console.WriteLine(str); 

// (ab;cd)
// (abcd)