logo

Rozdíl mezi nahradit() a nahraditAll() v Javě

Třída Java String poskytuje různé metody pro manipulaci s řetězci. The nahradit() a vyměnit vše() metoda jsou jedním z nich, které se používají k nahrazení řetězce zadaným dílčím řetězcem. Protože název obou metod zní stejně, ale jejich fungování je odlišné.

Pojďme pochopit metody nahradit(), nahraditVše() a nahraditFirst() a rozlišit každou z nich jednu po druhé.

Metoda String.replace().

The nahradit() metoda je jednou z nejpoužívanějších řetězcových metod pro nahrazení všech výskytů znaku daným znakem. Metoda replace() v JDK 1.5 nahrazuje znak a posloupnost hodnot znaků.

obsahuje python

Syntax:

Jedná se o následující dva typy nahradit() metody ve třídě Java String.

 public string replace(char prevChar, char newChar) public String replace(CharSequence target, CharSequence replacement) 

Parametry

prevChar: Parametr definuje charakter řetězce, který má být nahrazen.

novýChar: Parametr definuje newChar, který nahradí prevChar.

Java vs C++

cílová: Parametr definuje cílovou sekvenci znaků.

výměna, nahrazení: Parametr definuje nahrazovací sekvenci znaků.

Vezměme si příklad, abychom pochopili, jak můžeme použít metodu replace() v programech Java.

ReplaceExample1.java

 // import required classes and packages package javaTpoint.JavaExample; import java.util.Scanner; // create class ReplaceExample1 to understand both type of replace() method public class ReplaceExample1 { // main() method start public static void main(String args[]){ // declare str1 str2, c, and subStr String str1, str2, targetStr, replacementStr; char prevChar, newChar; // create instance of Scanner class to take input string from user Scanner sc = new Scanner(System.in); // take 1st string from user System.out.println('Enter 1st string :'); str1 = sc.nextLine(); System.out.println('Enter 2nd string :'); str2 = sc.nextLine(); System.out.println('Enter the target string for 1st string :'); targetStr = sc.nextLine(); System.out.println('Enter the replacement string for 1st string :'); replacementStr = sc.nextLine(); System.out.println('Enter character which you want to replace in 2nd string :'); prevChar = sc.next().charAt(0); System.out.println('Enter character which take place of :'+prevChar+' in 2nd string :'); newChar = sc.next().charAt(0); sc.close(); String replaceStr1 = str2.replace(prevChar, newChar);//replaces all occurrences of prevChar to newChar System.out.println('String after replacing '+prevChar+' with '+newChar+' is: '+replaceStr1); String replaceStr2 = str1.replace(targetStr, replacementStr);//replaces all occurrences of targetStr with replacementStr System.out.println('String after replacing '+targetStr+' with '+replacementStr+' is: '+replaceStr2); } } 

Výstup:

plná forma
nahradit() vs nahraditAll() v Javě

Metoda String.replaceAll().

The vyměnit vše() metoda je podobná metodě String.replaceFirst(). Jediný rozdíl mezi nimi je v tom, že nahradí podřetězec daným řetězcem pro všechny výskyty v řetězci.

Syntax:

Syntaxe metody replaceAll() je následující:

 public String replaceAll(String str, String replacement) 

Parametry

str: Parametr definuje podřetězec, který musíme v řetězci nahradit.

výměna, nahrazení: Parametr definuje náhradní řetězec, který nahradí řetězec str.

Vezměme si příklad, abychom pochopili, jak můžeme v našich programech použít metodu replaceAll().

standardní odchylka pandy

ReplaceExample3.java

 // import required classes and packages package javaTpoint.JavaExample; import java.util.Scanner; // create class ReplaceExample3 to understand replaceAll() method public class ReplaceExample3 { // main() method start public static void main(String args[]){ // declare str1 str2, subStr String str1, targetStr, replacementStr; // create instance of Scanner class to take input string from user Scanner sc = new Scanner(System.in); // take 1st string from user System.out.println('Enter 1st string :'); str1 = sc.nextLine(); System.out.println('Enter the target string for 1st string :'); targetStr = sc.nextLine(); System.out.println('Enter the replacement string for 1st string :'); replacementStr = sc.nextLine(); sc.close(); String replaceStr1 = str1.replaceAll(targetStr, replacementStr);//replaces all occurrences of targetStr to replacementStr System.out.println('String after replacing '+targetStr+' with '+replacementStr+' is: '+replaceStr1); } } 

Výstup:

nahradit() vs nahraditAll() v Javě

Metoda String.replaceFirst().

The nahraditPrvni() metoda je další metoda pro nahrazení podřetězce. Nahradí podřetězec zadaným řetězcem. Metoda replaceFirst() nahradí pouze první výskyt dílčího řetězce.

Syntax:

Syntaxe metody replaceFirst() je následující:

rychlé řazení java
 public String replaceFirst(String str, String replacement) 

Parametry

str: Parametr definuje podřetězec, který musíme v řetězci nahradit.

Výměna, nahrazení: Parametr definuje náhradní řetězec, který nahradí řetězec str.

Vezměme si příklad, abychom pochopili, jak můžeme v našich programech použít metodu replaceFirst().

ReplaceExample2.java

 // import required classes and packages package javaTpoint.JavaExample; import java.util.Scanner; // create class ReplaceExample2 to understand replaceFirst() method public class ReplaceExample2 { // main() method start public static void main(String args[]){ // declare str1 str2, subStr String str1, targetStr, replacementStr; // create instance of Scanner class to take input string from user Scanner sc = new Scanner(System.in); // take 1st string from user System.out.println('Enter 1st string :'); str1 = sc.nextLine(); System.out.println('Enter the target string for 1st string :'); targetStr = sc.nextLine(); System.out.println('Enter the replacement string for 1st string :'); replacementStr = sc.nextLine(); sc.close(); String replaceStr1 = str1.replaceFirst(targetStr, replacementStr);//replaces first occurrences of targetStr to replacementStr System.out.println('String after replacing '+targetStr+' with '+replacementStr+' is: '+replaceStr1); } 

Výstup:

nahradit() vs nahraditAll() v Javě