文字列の間の空白を削除する方法 - Java

文字列間の空白を削除する方法– Java

今日、私はJavaでおもしろくて簡単なことをいじっています。率直に言って、私はそれについて本当に知りません。 たとえば、コードスニペットを参照してください。

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

私がしようとしているのは、文字列間のすべての空白を削除することです。 たとえば、「He​​llo Google」のユーザーキーは、「Hello AND Google」に置き換えられます。ユーザーが単語の間にスペースを1つだけ入力する場合、これは正しいです。

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

素晴らしい、まさに私が欲しいもの、正規表現ROCK !!!