1

xx*と交換したいx

私は試したstring.replaceAll("xx*", "x");

しかし、正規表現*では特別なので、与える必要がありますが、Javaで\* 与えるには与える必要があります\\\

==>最終的には動作するはずですstring.replaceAll("xx\\*", "x");

ただし、文字列にxx*上記のステートメントが含まれている場合、置換に失敗し xx*ますx

4

4 に答える 4

7
  1. 呼び出しの結果をreplaceAll()文字列変数に再割り当てする必要があります。そのメソッドは、呼び出した文字列を変更するのではなく、新しい文字列を返します。

  2. 使用しないでくださいreplaceAll()!! replace()リテラル文字列を扱う場合に使用します。

    string = string.replace("xx*", "x");
    
于 2013-09-04T12:37:08.403 に答える
1

文字列は不変です。の結果をreplaceAll元の値に代入する

string = string.replaceAll("xx\\*", "x");
于 2013-09-04T12:21:01.987 に答える
0

string.replaceAll("xx\\*", "x");の代わりに使用string.replaceAll("xx\*", "x");

これはうまくいっています。

ライブデモはこちら.

于 2013-09-04T12:24:27.973 に答える