Как удалить пробел между строкой - Java

Как удалить пробел между строкой - Java

Сегодня я играю с какой-то забавной и простой вещью на Java, честно говоря, я действительно не знаю об этом. Например, см. Фрагменты кода:

if(StringUtils.hasLength(sText)
 {
     sText= sText.replaceAll(" ", " AND ");
}

Я пытаюсь удалить все пробелы между строкой. например, пользовательский ключ в «Привет, Google», он будет заменен на «Привет, Google», да, это правильно, если пользователь вводит только один пробел между словами.

"Hello Google"  ---> "Hello AND Google"

Но как насчет пользовательского ключа во многих промежутках между ними? Например

"Hello           Google"  ---> "Hello AND AND AND AND AND Google"

Это не то, что я хочу, следует ли мне заменить его, как показано ниже?

if(StringUtils.hasLength(sText)
 {
     sText= sText.replaceAll(" ", " AND ");
     sText= sText.replaceAll("  ", " AND ");
     sText= sText.replaceAll("   ", " AND ");
     sText= sText.replaceAll("    ", " AND ");
     sText= sText.replaceAll("     ", " AND ");
}

я могу заменить сколько угодно, но это не так эффективно и достаточно динамично.

Решение

В этом случае вы должны использовать регулярное выражение для ее решения.

if(StringUtils.hasLength(sText)
 {
     sText= sText.replaceAll("\\s+", " AND ");
}

Отлично, именно то, что я хочу, Regular Expression ROCK !!!

Related