logo

Skillnaden mellan replace() och replaceAll() i Java

Java String-klassen tillhandahåller olika metoder för att manipulera strängar. De byta ut() och Ersätt alla() metod är en av dem som används för att ersätta en sträng med en specificerad understräng. Eftersom namnet på båda metoderna låter samma men deras funktion är olika.

Låt oss förstå metoderna replace(), replaceAll() och replaceFirst() och skilja var och en av dem en efter en.

String.replace() Metod

De byta ut() metod är en av de mest använda strängmetoderna för att ersätta alla förekomster av ett tecken med det givna tecknet. Metoden replace() i JDK 1.5 ersätter char och en sekvens av char-värden.

metoder i java

Syntax:

Dessa är följande två typer av byta ut() metoder i klassen Java String.

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

Parametrar

prevChar: Parametern definierar karaktären på strängen som ska ersättas.

newChar: Parametern definierar newChar som ersätter prevChar.

mål: Parametern definierar målsekvensen av tecken.

fönster.öppna

ersättning: Parametern definierar ersättningssekvensen av tecken.

Låt oss ta ett exempel för att förstå hur vi kan använda metoden replace() i Java-program.

ErsättExempel1.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); } } 

Produktion:

replace() vs replaceAll() i Java

String.replaceAll() Metod

De Ersätt alla() metoden liknar metoden String.replaceFirst(). Den enda skillnaden mellan dem är att den ersätter understrängen med den givna strängen för alla förekomster som finns i strängen.

Syntax:

Syntaxen för metoden replaceAll() är som följer:

genericitet i java
 public String replaceAll(String str, String replacement) 

Parametrar

str: Parametern definierar delsträngen som vi behöver ersätta i strängen.

ersättning: Parametern definierar ersättningssträngen som ersätter str.

Låt oss ta ett exempel för att förstå hur vi kan använda metoden replaceAll() i våra program.

ErsättExempel3.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); } } 

Produktion:

replace() vs replaceAll() i Java

String.replaceFirst() metod

De replaceFirst() metod är en annan metod för att ersätta delsträngen. Den ersätter understrängen med den givna strängen. Metoden replaceFirst() ersätter endast den första förekomsten av delsträngen.

Bourne igen skal

Syntax:

Syntaxen för metoden replaceFirst() är följande:

skiva java array
 public String replaceFirst(String str, String replacement) 

Parametrar

Str: Parametern definierar delsträngen som vi behöver ersätta i strängen.

Ersättning: Parametern definierar ersättningssträngen som ersätter str.

Låt oss ta ett exempel för att förstå hur vi kan använda metoden replaceFirst() i våra program.

ErsättExempel2.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); } 

Produktion:

replace() vs replaceAll() i Java