String x = "Welcome to Java World";
System.out.println(x.replaceAll(".*","JAVA"));
Actual Output = "JAVAJAVA" .
Excepted Output = "JAVA".
なぜこのように置き換えられるのか誰に助けてもらえますか? "。*"元の文字列のすべての文字を "JAVA"に置き換えます。なぜこれが "JAVAJAVA"を返しますか?JavaのString replaceAllメソッドを使用して文字列全体を新しい値に置き換えたい
"。+"正規表現として試してみることができますか?おそらく、マッチングでは、空のStringを任意のStringの部分文字列と見なし、次に文字列の実際の内容を2番目の部分文字列とみなし、2回置き換えますか?しかし何よりも暗闇の中のショットのほうが多い。 –