私の質問は非常に簡単です:
「\」を「」に置き換える方法???
私はこれを試しました:
str.replaceAll("\\", "");
しかし、私は例外を取得します
08-04 01:14:50.146: I/LOG(7091): java.util.regex.PatternSyntaxException: Syntax error U_REGEX_BAD_ESCAPE_SEQUENCE near index 1:
これに(正規表現を使用する)を使用しない場合は簡単です- (プレーン文字列を使用する)を使用するだけです。本当に正規表現が必要でない限り、正規表現形式を使用しないでください。それは物事をより複雑にするだけです。replaceAll
replace
orを呼び出す だけでは意味がないことを忘れないでください。文字列は不変であるため、戻り値を使用する必要があります。replace
replaceAll
String replaced = str.replace("\\", "");
\\
文字列エスケープの後です\
。これは、正規表現のエスケープ文字でもあります
String newStr = str.replaceAll("\\\\", "");
(結果を割り当てることを忘れないでください)
また、正規表現が期待される入力として文字列を使用する場合は、IMO を使用する方が安全Pattern#quote
です。
String newStr = str.replaceAll(Pattern.quote("\\"), "");
これを試してください:
str.replaceAll("\\\\", "");
は\
正規表現でエスケープする必要があります => と書く必要が\\
あり、それぞれ\
を Java でエスケープする必要があります => それが 4 がある理由です\