I have a string "hello [world] this {is} a (test)" I want to remove all text in braces, e.g. returning "hello this a". But only if the brac开发者_开发知识库es match.
Anyone have a nice neat solution?You can use a regular expression:
s = Regex.Replace(s, @"\s*?(?:\(.*?\)|\[.*?\]|\{.*?\})", String.Empty);
The \s*?
matches any white space before the brackets.
The (?: )
is a non-matching parenthesis to group the conditions inside it.
The \(.*?\)
is mathing parentheses with zero or more characters between them.
精彩评论