我需要使用java替换一行中单词之间的多个空格。我使用下面的代码来执行此操作。但是,当两个单词中的一个单词是连字符' - '时,它不起作用。如果其中一个单词是连字符' - ',请告诉我如何用一个空格替换一行中单词之间的多个空格。
String s="1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2"
s.replaceAll("\\b\\s{2,}\\b", " ");
由于
答案 0 :(得分:4)
您可以简单地使用:
String s = "1 - 2 2"
s.replaceAll("\\s{2,}", " ");
给出:“1 - 2 2”
甚至更简单:
s.replaceAll("\\s+", " ");
答案 1 :(得分:1)
删除单词边界\\b
,因为短划线-
和空格之间没有人。