RegEx替换为短语添加括号

时间:2013-04-03 08:01:35

标签: c# regex

我需要一个RegEx,它会在遇到逗号时为一串字添加括号。一个例子可能更容易:

  

我在这里,那里 - > (我在这里),那里

     鲍勃,在这里,某处 - >鲍勃,(在这里),某处

     苏,鲍勃,乔,你在这里 - >苏,鲍勃,乔,(这里是你)

     

Milly Barry Molly,Joe Sandy Mary - > (Milly Barry Molly),(Joe Sandy Mary)

非常感谢任何帮助或指示。

1 个答案:

答案 0 :(得分:1)

尝试

string input = "Milly Barry Molly,Joe Sandy Mary";

Regex regex = new Regex(
    @"(?<=^|,)\s*(?>[^\s,]+\s*){2,}(?=,)|(?<=,)\s*(?>[^\s,]+\s*){2,}$" );
string result = regex.Replace(input, "($&)");

Console.WriteLine(result);
// (Milly Barry Molly),(Joe Sandy Mary)

请求进一步说明。