Metoda Java String replace () zastępuje każde pasujące wystąpienie starego znaku / tekstu w ciągu nowym znakiem / tekstem.
Składnia replace()
metody to
string.replace(char oldChar, char newChar)
lub
string.replace(CharSequence oldText, CharSequence newText)
Tutaj string jest obiektem String
klasy.
replace () Parametry
Aby zamienić pojedynczy znak, replace()
metoda przyjmuje te dwa parametry:
- oldChar - znak, który ma zostać zastąpiony w ciągu
- newChar - pasujące znaki są zastępowane tym znakiem
Aby zamienić podciąg, replace()
metoda przyjmuje te dwa parametry:
- oldText - podciąg do zastąpienia w ciągu
- newText - pasujące podciągi są zastępowane tym ciągiem
replace () Wartość zwracana
replace()
Metoda zwraca nowy ciąg, gdzie w każdym wystąpieniu dopasowywania znaków / tekstu jest zastępowany nowym znaków / tekstu.
Przykład 1: Znaki w języku Java String replace ()
class Main ( public static void main(String() args) ( String str1 = "abc cba"; // all occurrences of 'a' is replaced with 'z' System.out.println(str1.replace('a', 'z')); // zbc cbz // all occurences of 'L' is replaced with 'J' System.out.println("Lava".replace('L', 'J')); // Java // character not in the string System.out.println("Hello".replace('4', 'J')); // Hello ) )
Uwaga: Jeśli znak, który ma zostać zastąpiony, nie znajduje się w ciągu, replace()
zwraca oryginalny ciąg.
Przykład 2: Podciągi w języku Java replace ()
class Main ( public static void main(String() args) ( String str1 = "C++ Programming"; // all occurrences of "C++" is replaced with "Java" System.out.println(str1.replace("C++", "Java")); // Java Programming // all occurences of "aa" is replaced with "zz" System.out.println("aa bb aa zz".replace("aa", "zz")); // zz bb zz zz // substring not in the string System.out.println("Java".replace("C++", "C")); // Java ) )
Uwaga: Jeśli podciągu do zastąpienia nie ma w ciągu, replace()
zwraca oryginalny ciąg.
Należy zauważyć, że replace()
metoda zastępuje podciągi, zaczynając od początku do końca. Na przykład,
"zzz".replace("zz", "x") // xz
Wynik powyższego kodu to xz, a nie zx. Dzieje się tak, ponieważ replace()
metoda zastąpiła pierwszy zz x.
Jeśli chcesz zamienić podciągi na podstawie wyrażenia regularnego, użyj metody Java String replaceAll ().