Java从字符串中删除破折号

时间:2013-08-07 14:00:04

标签: android string replace hyphen

它不是Remove dash from a phone number的副本 也许解决方案在这里,但我不明白Can't remove dashes (-) from string

我必须从字符串中删除al - (破折号),alzo我必须删除“ - ”和“ - ”(破折号附近的所有空格) 这不起作用(什么都不做)

toclean.replaceAll("[\\s\\-()]", "");
        toclean.replaceAll("[\\s\\- ()]", "");
        toclean.replaceAll("[\\s\\ -()]", "");

主意?

1 个答案:

答案 0 :(得分:2)

你想要破折号周围的所有空格,而你试过的正则表达式将删除字符串中的所有空格,破折号和圆括号。删除连字符及其周围空格的正则表达式是:

"[ ]?-[ ]?"

如果要删除任何空格,可以使用\ s:

"\\s?-\\s?"

这只会删除任何连字符前后最近的空格(因此,如果之前有两个空格,则只删除一个空格)。