java - 删除字母之间的空格和单词之间的双空格

标签 java

我需要删除字母之间的所有空格,并将双空格变成单词之间的单空格。

所以这个(单词之间有双空格):

h e l l o m y n a m e i s b o b

需要变成这样:

hello my name is bob

我已经尝试过
temp = "he l o m y n a m e is bo b"
temp = temp.trim().replaceAll("\\s", "");
但它只是删除了所有空格。

我设法让它工作:
temp = temp.replace("", ".");
temp = temp.replace("", "");
temp = temp.replace(".", "");
但我想要一种更简单的方法。

最佳答案

您应该使用正则表达式\s(?!\s)。这基本上表示任何有空格但后面没有空格的内容。

这将像这样使用:

temp =  "h e l l o  m y  n a m e  i s  b o b";
temp = temp.replaceAll("\\s(?!\\s)", "");
System.out.println(temp);

输出:你好,我叫 bob

希望这有帮助:)

关于java - 删除字母之间的空格和单词之间的双空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37581965/

相关文章:

java - KeyFactory 有哪些不同类型的实例?

java - Spring Boot yaml 属性作为 map 不起作用

java - 无法使用 Deploy to container Plugin 从 jenkins 对 tomcat 部署 war

java - Kafka - Confluent - Java 版本支持

java - 将 double 值与 double 常数进行比较

java - 图形生成器监听器中的 JMeter java.io.FileNotFoundException

Debian 上的 Java : Probable fatal error: No fonts found

java - 如何使 "provided"范围在 Android Studio 上工作?

java - 更改数组列表内的值?

java - 如何在jsp中实现客户端和服务器代码