Java で文字列の文字を置換する
-
Java 文字列の 1 文字を置換するには
String.replace()
を使用する -
Java 文字列の最初に出現する文字のみを置換する
String.replaceFirst()
-
Java で文字列内の 2 文字を置換するには
String.replace()
を使用する
このチュートリアルでは、Java で与えられた文字列の中の 1つ以上の文字を置換するための String
クラスの replace()
と replaceFirst()
の 2つのメソッドを紹介します。
Java 文字列の 1 文字を置換するには String.replace()
を使用する
文字列中の一文字を置換するには、replace()
メソッドを用いることができます。第一引数は置換したい文字であり、第二引数は古い文字を置き換える新しい文字です。
次の例では、文字列 oldString1
の中に &
を含む文がありますが、これをコマで置き換えたいとします。これは、oldString1
を使用して replace()
メソッドを呼び出し、&
とコマを渡すことで簡単に行うことができます。
ここで注意すべき重要なことは、replace()
の &
の前に空白があることです。これは、対象の文字の周りに空白があるためです。空白をなくすために、&
と空白の両方をコマに置き換えます。
public class ReplaceCharString {
public static void main(String[] args) {
String oldString1 = "My name is Sam & I am a software developer.";
String newString1 = oldString1.replace(" &", ",");
System.out.println(newString1);
}
}
出力:
My name is Sam, I am a software developer.
Java 文字列の最初に出現する文字のみを置換する String.replaceFirst()
置換したい文字列の中には、同じ文字が複数存在する場合があります。文字の最初の出現のみを置換し、それ以降の出現は無視するようにしたい場合は、String
クラスの別のメソッド replaceFirst()
を使用します。これは String
クラスの別のメソッド replaceFirst()
を使って行うことができます。その名が示すように、これは文字列の最初の文字のみを置換します。
この例では、2つの &
を持つ文字列があるので、先ほどの例のように最初の 1つだけをコマに置き換え、2つ目の &
は無視します。そこで、oldString.replaceFirst(oldChar, newChar)
を使用して、空白を &
とコマで渡します。出力は最終的な結果を示しています。
public class ReplaceCharString {
public static void main(String[] args) {
String oldString1 =
"I have used multiple Internet providers & but my current provider is AT&T.";
String newString1 = oldString1.replaceFirst(" &", ",");
System.out.println(newString1);
}
}
出力:
I have used multiple Internet providerss, but my current provider is AT&T.
Java で文字列内の 2 文字を置換するには String.replace()
を使用する
このチュートリアルの最後の例では、replace()
を使って 2つの異なる文字を置換します。oldString1
では、大文字の文字 (V
) を小文字の文字 (v
) に置き換え、文字列の最後の文字であるコマ ,
を .
に置き換えたいとします。
2つの replace()
メソッドを結合し、適切な文字を渡すことで、1 行でこれを行うことができます。
public class ReplaceCharString {
public static void main(String[] args) {
String oldString1 = "My name is Sam and I am a Software DeVeloper,";
String newString1 = oldString1.replace("V", "v").replace(",", ".");
System.out.println(newString1);
}
}
出力:
My name is Sam and I am a Software Developer.
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn関連記事 - Java String
- Java で 16 進文字列のバイト配列を変換する方法
- Java で文字列から部分文字列を削除する方法
- Java で文字列から文字列配列への変換を実行する方法
- Java 文字列をバイトに変換する方法
- Java でランダムな文字列を生成する
- Java のスワップメソッド