Metoda Java String replace () nahradí každý výskyt výskytů starého znaku / textu v řetězci novým znakem / textem.
Syntaxe replace()
metody je buď
string.replace(char oldChar, char newChar)
nebo
string.replace(CharSequence oldText, CharSequence newText)
Zde je řetězec objektem String
třídy.
nahradit () parametry
Chcete-li nahradit jeden znak, replace()
metoda má tyto dva parametry:
- oldChar - znak, který má být v řetězci nahrazen
- newChar - odpovídající znaky jsou nahrazeny tímto znakem
Chcete-li nahradit podřetězec, replace()
metoda má tyto dva parametry:
- oldText - podřetězec, který má být v řetězci nahrazen
- newText - odpovídající podřetězce jsou nahrazeny tímto řetězcem
replace () návratová hodnota
replace()
Metoda vrací nový řetězec, kde každý výskyt odpovídající charakteru / text nahrazen novým znaku / textu.
Příklad 1: Znaky 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 ) )
Poznámka: Pokud znak, který má být nahrazen, není v řetězci, replace()
vrátí původní řetězec.
Příklad 2: Java String replace () Substrings
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 ) )
Poznámka: Pokud podřetězec, který má být nahrazen, není v řetězci, replace()
vrátí původní řetězec.
Je důležité si uvědomit, že replace()
metoda nahrazuje podřetězce začínající od začátku do konce. Například,
"zzz".replace("zz", "x") // xz
Výstupem výše uvedeného kódu je xz, nikoli zx. Je to proto, že replace()
metoda nahradila první zz x.
Pokud potřebujete nahradit podřetězce založené na regulárním výrazu, použijte metodu Java String replaceAll ().