求大神帮忙写个正则表达式
给出一段字符串,要去除中间的括号部分的内容,包括中文和英文的。我这边有一个:
Regex.Replace(strSM, @"\([^\(]*\)", "")
但是它只能去除英文括号的内容。如果要实现去除中英文的括号内容,应该如何做呢。
如果有若干个括号,去除从括号开始到括号结束的内容呢,比如:ab(c)de(aaa)fg——>abfg
------解决方案--------------------Regex.Replace(strSM, @"\(.*\)", "")
------解决方案--------------------Regex.Replace(strSM, @"(\(
------解决方案--------------------()[^\(]*(\)
------解决方案--------------------))", "")
------解决方案--------------------要严密的话,要玩平衡组
------解决方案--------------------http://blog.csdn.net/zm2714/article/details/7946437
文中给出的\(((?<Open>\()
------解决方案--------------------(?<-Open>\))
------解决方案--------------------[^()])*(?(Open)(?!))\)
加上中文括号
[(\(]((?<Open>[(\(])
------解决方案--------------------(?<-Open>[)\)])
------解决方案--------------------[^(())])*(?(Open)(?!))[)\)]
------解决方案--------------------Regex.Replace(strSM, @"(?s)[((].*[))]", "")