我已经使用了很多Regex来做到这一点,但问题是我还要考虑:
abc- -abc //should output abc-abc
abc -- abc //should output abc - abc
abc- - abc //should output abc- abc
abc - -abc //should output abc -abc
我用过:
String x=x.replaceAll("[\\-*]{2,}","-");
答案 0 :(得分:7)
您可以使用以下正则表达式:
-(\\s*-)+
-
:按字面意思匹配-
。(...)+
:分组(1次以上)\\s*-
:匹配-
可选空格(\s
)前置x = x.replaceAll("-(\\s*-)+", "-");