I have a string:
HLN (Formerly Headline News)
I want to remove everything inside the parens and the parens themselves, leaving only:
HLN
I've tried to do this with a regex, but my difficulty is with this pattern:
"(.+?)"
When I use it, it always gives me a PatternSyntaxException
. How can I fix my regex?
Because parentheses are special characters in regexps you need to escape them to match them explicitly.
For example:
"\\(.+?\\)"
String foo = "(x)()foo(x)()";
String cleanFoo = foo.replaceAll("\\([^\\(]*\\)", "");
// cleanFoo value will be "foo"
The above removes empty and non-empty parenthesis from either side of the string.
plain regex:
\([^\(]*\)
You can test here: http://www.regexplanet.com/simple/index.html
My code is based on previous answers
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With