重複の可能性:
Java文字クラスで空の文字を表す方法
java.lang.Stringで定義されている置換関数を使用しており、「」(空白の文字列)に相当するものとして「\ 0」を使用しようとしましたが、空白の文字列ではなくスペースが追加されます。
空白の文字列に相当する文字はありますか?
重複の可能性:
Java文字クラスで空の文字を表す方法
java.lang.Stringで定義されている置換関数を使用しており、「」(空白の文字列)に相当するものとして「\ 0」を使用しようとしましたが、空白の文字列ではなくスペースが追加されます。
空白の文字列に相当する文字はありますか?
「空のキャラクター」のようなものはありません。Achar
は値型であるため、値が必要です。値がないということは、char
-がないということです。そのため、空の文字列(つまり、「文字なし」)とnull許容文字は使用できますが、「空の文字」は使用できません。
とにかく、このString.replace(char, char)
メソッドは、ある文字を別の文字に置き換えることを目的としています。この操作は、既知のサイズの単一のブロックを割り当てる必要があることを意味するため、非常に簡単です。実装String.replaceAll(string,string)
するのはかなり複雑な方法ですが、それが異なる理由です。
残念ながらString.replace(char,string)
方法はありませんが、その理由をご理解いただければ幸いです。
String
与えられた中には無限に多くの空白がありますString
...間'a'
に何も'b'
あり"ab"
ませんか?ゼロ除算のようなものです!
「何か」を「」に置き換えたいと思いますが、その逆はできません...
String ou="test";
ou = ou.replace("t", "");
System.out.println(ou);
出力は次のようになります。es
置換のchar
バージョンでは、''は有効ではないため、これは機能しませんchar
。
文字を削除する場合は、String.replace(char、char)を使用できません。空の文字はありません。このメソッドは文字列の長さを変更することはなく、文字を別の文字に置き換えるだけです。
String.replaceAll(java.lang.String、java.lang.String)(またはreplaceFirst
)を使用する必要があります
"ababababa".replaceAll("a", ""); // returns "bbbb"
ありませんが、があることに注意してください。したがって、最初の引数として文字列を使用し、2番目の引数として「」を使用しString.replace(CharSequence, CharSequence)
て呼び出すことができるはずです。String.replace