2016-05-13 2 views
1

У меня есть TreeMap на Java, где некоторые из ключей имеют тип ABC (1), ABC (2) с номерами внутри круглых скобок.Regex для удаления круглых скобок

Я хотел бы удалить (1) и (2) вместе с предыдущим пустым пространством и в итоге получить только ABC.

Я действительно плохо регулярное выражение, я знаю, что это должно быть очень просто регулярное выражение для некоторых членов здесь, но я хотел бы найти регулярное выражение для замены " (1)" и " (2)" с "".

Большое спасибо за любую помощь заранее.

+0

Аналогичный, но не совсем дублированный связанный пост, в котором содержимое в круглых скобках есть что угодно, и обсуждение вращается вокруг того, изменяет ли строка String.replaceAll() строку, на которую она вызывается. –

+0

Мой комментарий выше относится к уже упомянутому здесь вопросу http://stackoverflow.com/questions/8206128/remove-everything-in-parentheses-java-using-regex. –

ответ

3
key.replaceAll(" \\([\\d]+\\)", "") 

Строка, указанная выше, должна возвращать ключ с такими номерами с префиксом с фиксированными пробелами. Выход из круглых скобок делает их буквальным совпадением, а не оператором группировки/захвата.

Я использовал RegexPlanet's regex tester for java для проверки регулярного выражения и String#ReplaceAll documentation, чтобы проверить замену Java на использование Java.

+1

Хотя дубликат, с которым я связан, можно было использовать для выяснения ответа, на мой взгляд, вы отвечаете лучше объясняет и ссылается на полезные внешние ресурсы. +1 –

+0

Ваша ссылка была полезна. Спасибо за комплимент моего ответа. –

+1

Это сработало. Большое спасибо @ MarkA.Fitzgerald Несмотря на то, что очень маловероятно иметь букву/слово вместо числа внутри скобки, я все равно хотел бы его искать. Просто для Fail-safe. Не могли бы вы помочь мне с регулярным выражением, чтобы найти слово ИЛИ число внутри скобки Спасибо большое! –

Смежные вопросы