首页 > 解决方案 > 我该如何做到这一点,以便将字符串变成只有单词之间有空格的单词?

问题描述

我之前看到其他一些人解决了这个问题,但是在将其转换为字符串时仍然存在一些问题,例如

yes, it is true

转变为

yes  it is true

我试图尽我所能解决这个问题。有人可以帮我解决这个问题,因为我正在尝试计算所有单词,它最终将“”(空格之间的空格)视为一个单词。请帮忙!

到目前为止我所拥有的:

public String cleanToken(String token2){
        token2 = token2.replaceAll("'s", " ");
        token2 = token2.replaceAll("\\r|\\n", " ");
        token2 = token2.replaceAll("\\p{Punct}", " ");
        token2 = token2.replaceAll("   ", "");
        token2 = token2.replaceAll("  ", "");
        token2 = token2.replaceAll("\t", " ");
        token2 = token2.toLowerCase();
        return token2;
    }

提前致谢

标签: java

解决方案


\\s将匹配任何空格。所以,像

return token2
        .replaceAll("'s", " ")
        .replaceAll("\\p{Punct}", " ")
        .replaceAll("\\s+", " ")
        .toLowerCase();

推荐阅读