logo

Hoe substring uit String in Java te verwijderen

Java biedt verschillende methoden voor het verwijderen van substrings uit Strings.

1) Met behulp van de vervangingsmethode

Deze methode behoort tot de klasse Java String en is overbelast om twee verschillende implementaties van dezelfde methode te bieden.

Bij de eerste benadering wordt een nieuw teken aan een string toegevoegd om elk vorig teken te vervangen.

Op deze manier wordt de string met de nieuwe tekens geretourneerd nadat alle oude tekens zijn bijgewerkt.

Syntaxis:

 string.replace(char oldChar, char newChar) 

De procedure retourneert deze tekenreeks als het nieuwe teken niet in de tekenreeks kan worden gevonden.

Voorbeeld:

 public class RemoveSubString { public static void main(String[] args) { String para = 'JavatPoint is for learning purpose'; String replace = para.replace('e', 'o'); System.out.println(replace); } } 

Uitgang:

Hoe substring uit String in Java te verwijderen

2) Charsequence gebruiken

De tweede techniek vervangt de CharSequence door de gewenste tekenreeks, die slechts een verzameling tekens is.

Syntaxis:

c++ gesplitste tekenreeks
 string.replace(char oldChar, char newChar) 

Deze bewerking en de eerste verschillen alleen doordat ze een reeks tekens vervangen.

Voorbeeld:

 public class RemoveSubString { public static void main(String[] arg){ String para = 'John like to learn programming'; String replace = para.replace('learn', 'teach'); System.out.println(replace); } } 

Uitgang:

Hoe substring uit String in Java te verwijderen

3) Vervang de subtekenreeks door een lege tekenreeks

Met Java kunt u eenvoudig een subtekenreeks die u uit de tekenreeks wilt verwijderen, vervangen door een lege tekenreeks.

Syntaxis:

exemplaar van
 string.replace(char oldChar, empty char) 

Voorbeeld:

 package org.arpit.java2blog; public class RemoveSubStringFromString { public static void main(String[] arg) { String para = 'John like to learn code'; String replace = para.replace('to learn', ''); System.out.println(replace); } } 

Uitgang:

Hoe substring uit String in Java te verwijderen

4) Gebruik de ReplaceFirst-methode van String

Deze methode zoekt naar een tekenreeks die overeenkomt met een reguliere expressie en vervangt deze door de gegeven tekenreeks als deze wordt gevonden.

Achter de schermen extraheert deze functie de tekst met behulp van een reguliere expressie door gebruik te maken van de compileren() En wedstrijden() methoden van de klasse Pattern.

Syntaxis:

 string.replaceFirst(No. of digit, new digit) 

Er wordt een reguliere expressie gemaakt om een ​​getal uit een string te extraheren en dit als string te vervangen door een ander getal.

Let op: Alleen de eerste twee cijfers van de string worden door dit nummer gewijzigd; de overige cijfers blijven ongewijzigd.

Voorbeeld:

 package org.arpit.java2blog; public class RemoveSubStringFromString { public static void main(String[] arg) { String para = 'John is 101 years old, and Mary is 20 years old'; String replaceFirst = para.replaceFirst('\d\d\d', '20'); System.out.println(replaceFirst); } } 

Uitgang:

Hoe substring uit String in Java te verwijderen

5) ReplaceFirst()-methode

De vervangEerste() methode kan worden gebruikt met een lege String om een ​​substring uit een String te verwijderen.

Syntaxis:

scan.volgende java
 string.replace(No. of digit, empty char) 

Voorbeeld:

 package org.arpit.java2blog.entry; public class RemoveSubStringFromString{ public static void main(String[] arg) { String para = ' John is 101 years old, and Mary is 20 years old '; String parafirstreplace = para.replaceFirst('\d\d', ''); System.out.println(parafirstreplace); }} 

Uitgang:

Hoe substring uit String in Java te verwijderen

6) Gebruik de ReplaceAll-methode

De vervang alles methode, in tegenstelling tot vervangEerste , gebruikt een reguliere expressie om elke instantie van de string te vervangen.

Gelijkwaardig aan vervangEerste , extraheert deze methode een tekenreeks met behulp van een reguliere expressie door gebruik te maken van de compileren() En wedstrijden() methoden. Het produceert ook een PatroonSyntaxisUitzondering als de reguliere expressie onjuist is.

Syntaxis:

 String replaceAll(No. of digit, int new number) 

We zullen een reguliere expressie gebruiken die alle getallen uit een string haalt en voor elke instantie getallen vervangt.

D : Deze reguliere expressie herkent elk cijfer tussen 0 en 9.

Voorbeeld:

 public class RemoveSubStringFromString { public static void main(String[] arg) { String para = ' John is 10 years old, and Mary is 20 years old '; String parareplace = para.replaceAll('\d\d', '30'); System.out.println(parareplace); }} 

Uitgang:

Hoe substring uit String in Java te verwijderen

7) ReplaceAll() methode

Met de methode ReplaceAll() kunt u een lege String gebruiken om een ​​subtekenreeks uit een tekenreeks te verwijderen.

Syntaxis:

 string.replace(No. of digit, empty char) 

Voorbeeld:

 package org.arpit.java2blog; public class RemoveSubStringFromString { public static void main(String[] arg) { String replaceAll = ' John is 10 years old, and Mary is 20 years old '; String replaceAllNumbers = replaceAll.replaceAll('\d\d', ''); System.out.println(replaceAllNumbers); } } 

Uitgang:

1 miljoen nummer
Hoe substring uit String in Java te verwijderen

8) De methode delete() van String Builder gebruiken

Om tekens aan een string toe te voegen of te verwijderen, gebruikt u de StringBuilder bevat een aanpasbare reeks karakters.

Door het lege bestand wordt een stringbuilder met een initiële capaciteit van 16 tekens gemaakt StringBuilder functie Object() { [eigen code] }, en als de interne buffer overloopt, wordt er automatisch een grotere stringbuilder gemaakt.

Het begin en einde van de subtekenreeks die uit de tekenreeks moet worden verwijderd, worden gespecificeerd als de eerste en tweede int-parameters van de verwijderen() functie.

De laatste index is exclusief omdat er één wordt afgetrokken van de tweede parameter, maar de startindex is inclusief.

Syntaxis:

 public StringBuilder delete(int start,int end) 

Als het begin negatief is, groter dan de lengte van de snaar, of groter dan het uiteinde van de snaar, a StringIndexOutOfBoundsException wordt gegooid. Er worden geen aanpassingen gedaan als het begin en het einde gelijk zijn.

Voorbeeld:

 public class main{ public static void main(String[] args){ StringBuilder stringBuilder = new StringBuilder('Java is language or programming language'); StringBuilder builder = stringBuilder.delete(7, 19); System.out.println(builder.toString()); } } 

Uitgang:

Hoe substring uit String in Java te verwijderen

9) Met behulp van de StringBuilder-methode vervangen().

Het enige verschil tussen de vervangen() functie en de verwijderen() method is de derde parameter, die wordt gebruikt om de tekens te vervangen die uit de string zijn verwijderd.

omkerende tekenreeks java

Als er een grote snaar moet worden vervangen, wordt de maat vergroot om tegemoet te komen aan de lengte van de snaar.

Syntaxis:

 string.replace(int start, int end, char newChar) 

De functie toString() De functie { [native code] }() kan worden gebruikt om de bijgewerkte tekenreeks af te drukken nadat deze methode a retourneert StringBuilder .

Voorbeeld:

 public class main{ public static void main(String[] args){ StringBuilder stringBuilder = new StringBuilder('Java is Code'); StringBuilder builder = stringBuilder.replace(8, 12, 'Programming language'); System.out.println(builder.toString()); } } 

Uitgang:

Hoe substring uit String in Java te verwijderen

Conclusie

In dit artikel hebt u geleerd hoe u tekens vervangt en verwijdert om een ​​subtekenreeks uit een tekenreeks te verwijderen. De gepresenteerde technieken omvatten het gebruik van de methoden StringBuilder delete() en Replace(), evenals de functies string Replace(), ReplaceFirst() en ReplaceAll().