Как сделать так, чтобы строка превращалась только в слова с пробелами между ними? - PullRequest
0 голосов
/ 04 мая 2020

Я видел некоторых других людей, которые решали эту проблему раньше, но все еще есть некоторые икоты, когда дело доходит до превращения его в строку, например,

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;
    }

Заранее спасибо

Ответы [ 2 ]

2 голосов
/ 04 мая 2020

\\s будет соответствовать любому пробелу. Итак, что-то вроде

return token2
        .replaceAll("'s", " ")
        .replaceAll("\\p{Punct}", " ")
        .replaceAll("\\s+", " ")
        .toLowerCase();
0 голосов
/ 04 мая 2020
 StringUtils.normalizeSpace(s.replaceAll("\\W", ""));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...