logo

Unterschied zwischen replace() und replaceAll() in Java

Die Java-String-Klasse bietet verschiedene Methoden zum Bearbeiten von Zeichenfolgen. Der ersetzen() Und alles ersetzen() Methoden sind eine davon, die zum Ersetzen einer Zeichenfolge durch eine angegebene Teilzeichenfolge verwendet werden. Da der Name beider Methoden gleich klingt, ist ihre Funktionsweise unterschiedlich.

Lassen Sie uns die Methoden „replace()“, „replaceAll()“ und „replaceFirst()“ verstehen und jede einzelne davon einzeln unterscheiden.

String.replace()-Methode

Der ersetzen() Die Methode ist eine der am häufigsten verwendeten Zeichenfolgenmethoden zum Ersetzen aller Vorkommen eines Zeichens durch das angegebene Zeichen. Die Methode replace() von JDK 1.5 ersetzt das Zeichen und eine Folge von Zeichenwerten.

Mergesort-Algorithmus

Syntax:

Dies sind die folgenden zwei Arten von ersetzen() Methoden in der Java-String-Klasse.

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

Parameter

prevChar: Der Parameter definiert das Zeichen der zu ersetzenden Zeichenfolge.

newChar: Der Parameter definiert den newChar, der den Platz des prevChar einnimmt.

Ziel: Der Parameter definiert die Zielzeichenfolge.

Ersatz: Der Parameter definiert die Ersetzungszeichenfolge.

Nehmen wir ein Beispiel, um zu verstehen, wie wir die Methode replace() in Java-Programmen verwenden können.

Ersetzen Sie Beispiel1.java

die Zahlen des Alphabets
 // 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); } } 

Ausgabe:

replace() vs replaceAll() in Java

String.replaceAll()-Methode

Der alles ersetzen() Die Methode ähnelt der String.replaceFirst()-Methode. Der einzige Unterschied zwischen ihnen besteht darin, dass die Teilzeichenfolge für alle in der Zeichenfolge vorhandenen Vorkommen durch die angegebene Zeichenfolge ersetzt wird.

Syntax:

Die Syntax der Methode replaceAll() lautet wie folgt:

 public String replaceAll(String str, String replacement) 

Parameter

Host-Linux

str: Der Parameter definiert den Teilstring, den wir im String ersetzen müssen.

Ersatz: Der Parameter definiert die Ersatzzeichenfolge, die die Zeichenfolge ersetzt.

Nehmen wir ein Beispiel, um zu verstehen, wie wir die Methode replaceAll() in unseren Programmen verwenden können.

Ersetzen SieExample3.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); } } 

Ausgabe:

replace() vs replaceAll() in Java

String.replaceFirst()-Methode

Der replaceFirst() Methode ist eine weitere Methode zum Ersetzen der Teilzeichenfolge. Es ersetzt die Teilzeichenfolge durch die angegebene Zeichenfolge. Die Methode replaceFirst() ersetzt nur das erste Vorkommen der Teilzeichenfolge.

Syntax:

Semantischer Fehler

Die Syntax der Methode replaceFirst() lautet wie folgt:

 public String replaceFirst(String str, String replacement) 

Parameter

Str: Der Parameter definiert den Teilstring, den wir im String ersetzen müssen.

Schriftarten für Gimp

Ersatz: Der Parameter definiert die Ersatzzeichenfolge, die die Zeichenfolge ersetzt.

Nehmen wir ein Beispiel, um zu verstehen, wie wir die Methode replaceFirst() in unseren Programmen verwenden können.

Ersetzen SieExample2.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); } 

Ausgabe:

replace() vs replaceAll() in Java