它不是Remove dash from a phone number的副本 也许解决方案在这里,但我不明白Can't remove dashes (-) from string
我必须从字符串中删除al - (破折号),alzo我必须删除“ - ”和“ - ”(破折号附近的所有空格) 这不起作用(什么都不做)
toclean.replaceAll("[\\s\\-()]", "");
toclean.replaceAll("[\\s\\- ()]", "");
toclean.replaceAll("[\\s\\ -()]", "");
主意?
答案 0 :(得分:2)
你想要破折号周围的所有空格,而你试过的正则表达式将删除字符串中的所有空格,破折号和圆括号。删除连字符及其周围空格的正则表达式是:
"[ ]?-[ ]?"
如果要删除任何空格,可以使用\ s:
"\\s?-\\s?"
这只会删除任何连字符前后最近的空格(因此,如果之前有两个空格,则只删除一个空格)。