13
String s = "hi                  hello";
s = s.replaceAll("\\s*", " ");
System.out.println(s);

私は上記のコードを持っていますが、なぜそれが生成されるのか理解できません

 h i  h e l l o 

それよりも

 hi hello

どうもありがとう

4

2 に答える 2

15

数量詞を使用して、 :-+の代わりに1つ以上のスペースを一致させます*

s = s.replaceAll("\\s+", " ");

\\s*は0個以上のスペースに一致することを意味し、すべての文字の前に空の文字に一致し、スペースに置き換えられます。

于 2012-12-19T20:06:47.107 に答える
9

0個以上のスペースに一致します。1個以上のスペースに一致*するように変更したいと思います。+

于 2012-12-19T20:06:54.107 に答える