ReplaceAll String java regex

时间:2018-02-28 02:10:38

标签: java android regex replaceall

我有一个包含以下内容的字符串:

v2

我想替换所有,所以我摆脱了包含百分比的括号,但不包括其他数字,如下:

"Hello my name is (0.9%) and (15%) bye (10.5%) also (C9, B6)"

目前我有这个,但它删除了我的所有数字,我知道如何解决它:

"Hello my name is and bye also C9, B6"

2 个答案:

答案 0 :(得分:2)

这样的事可能吗?

"Hello my name is (0.9%) and (15%) bye (10.5%) also (C9, B6)".replaceAll("\\((?:\\d|\\.)+%\\)", "")

Demo

此处还删除每个带括号的百分比后的单个空格:

"Hello my name is (0.9%) and (15%) bye (10.5%) also (C9, B6)".replaceAll("\\((?:\\d|\\.)+%\\) ", "")

给出:

Hello my name is and bye also (C9, B6)

答案 1 :(得分:1)

删除外部括号,并在可选点之前和之后添加与数字的匹配。

.replaceAll("\\([0-9]+?\\.?[0-9]+?\\%\\)", "");

注意:您可以更改" +"到" *"如果你想允许一个前导点或尾随点。