2016-05-13 260 views
1

我在Java中有一個TreeMap,其中一些密鑰的類型爲ABC (1),ABC (2),括號內只有數字。正則表達式刪除括號

我想刪除(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替換。

+1

雖然重複我鏈接到可以用來找出答案,在我看來,你的答案更好地解釋和鏈接到有用的外部資源。 +1 –

+0

你的鏈接很有幫助。感謝您對我的回答的讚美。 –

+1

工作。非常感謝@ MarkA.Fitzgerald 儘管在括號內有一個字母/單詞而不是數字,但我仍然想要搜索它。只是爲了防故障。 你能幫我用正則表達式尋找一個詞或括號內的數字 非常感謝! –