如何删除连字符之间的所有空格以及后面的字符串中的前后字?
String s = "O Jesus - Jesus Jesus-O - Jesus - O -O";
s.replaceAll(" - ", "-"); <- This only replaces first spacy-hyphen with hyphen
我们正在获取其他搜索词,其中连字符位于空格数之间的未知位置。正则表达式如何处理相同的?需要全球解决方案。
需要输出:
"O Jesus-Jesus Jesus-O-Jesus-O-O";
尝试拆分和修剪并加入,但代码看起来很垃圾。需要一些捷径。
答案 0 :(得分:3)
正则表达式允许您指定未知数量的空格:
s = s.replaceAll("\\s*-\\s*", "-");
其中\\s*
表示0个或更多的空格。
输出结果为:O Jesus-Jesus Jesus-O-Jesus-O-O