Java poskytuje niekoľko metód na odstránenie podreťazcov z reťazcov.
1) Použitie metódy výmeny
Táto metóda patrí do triedy Java String a je preťažená, aby poskytovala dve rôzne implementácie tej istej metódy.
V prvom prístupe sa do reťazca pridá nový znak, ktorý nahradí každý predchádzajúci znak.
Týmto spôsobom sa vráti reťazec s novými znakmi po aktualizácii všetkých starých znakov.
Syntax:
string.replace(char oldChar, char newChar)
Procedúra vráti tento reťazec, ak nový znak nemožno nájsť v reťazci.
Príklad:
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); } }
Výkon:
2) Pomocou Charsequence
Druhá technika nahrádza požadovaný reťazec znakov pre CharSequence, čo je len zbierka znakov.
Syntax:
komisia pre výber zamestnancov význam
string.replace(char oldChar, char newChar)
Táto operácia a prvá sa líšia len tým, že nahrádza reťazec znakov.
Príklad:
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); } }
Výkon:
3) Nahraďte podreťazec prázdnym reťazcom
Java vám umožňuje jednoducho nahradiť podreťazec, ktorý chcete z reťazca odstrániť, prázdnym reťazcom.
Syntax:
string.replace(char oldChar, empty char)
Príklad:
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); } }
Výkon:
vek shilpa shetty
4) Pomocou Stringovej metódy replaceFirst
Táto metóda hľadá reťazec, ktorý sa zhoduje s regulárnym výrazom, a ak sa nejaký nájde, nahradí ho daným reťazcom.
Táto funkcia v zákulisí extrahuje text pomocou regulárneho výrazu pomocou kompilovať () a zápasy() metódy triedy Pattern.
Syntax:
string.replaceFirst(No. of digit, new digit)
Vytvorí sa regulárny výraz na extrahovanie čísla z reťazca a jeho nahradenie iným číslom ako reťazcom.
Poznámka: Týmto číslom sa zmenia iba prvé dve číslice reťazca; zostávajúce číslice zostanú nezmenené.
Príklad:
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); } }
Výkon:
5) metóda nahradiťFirst().
The nahradiťFirst() metódu možno použiť s prázdnym reťazcom na odstránenie podreťazca z reťazca.
Syntax:
string.replace(No. of digit, empty char)
Príklad:
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); }}
Výkon:
6) Pomocou metódy nahradiťVšetko
The nahradiť všetko metóda, na rozdiel od nahradiťPrvý , používa regulárny výraz na nahradenie každej inštancie reťazca.
Podobný nahradiťPrvý , táto metóda extrahuje reťazec pomocou regulárneho výrazu pomocou kompilovať () a zápasy() metódy. Vyrába tiež a PatternSyntaxException ak je regulárny výraz nesprávny.
np.kde
Syntax:
String replaceAll(No. of digit, int new number)
Použijeme regulárny výraz, ktorý vytiahne všetky čísla z reťazca a nahradí čísla pre každý výskyt.
d : Tento regulárny výraz rozpoznáva akúkoľvek číslicu medzi 0 a 9.
Príklad:
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); }}
Výkon:
7) metóda nahradiťVšetko().
Pomocou metódy replaceAll() môžete použiť prázdny reťazec na odstránenie podreťazca z reťazca.
Syntax:
string.replace(No. of digit, empty char)
Príklad:
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); } }
Výkon:
Fibonacciho sekvencia java
8) Pomocou metódy delete() nástroja String Builder
Ak chcete pridať a odstrániť znaky z reťazca, StringBuilder obsahuje modifikovateľnú postupnosť znakov.
Zostavovač reťazcov s počiatočnou kapacitou 16 znakov je vytvorený prázdnym StringBuilder funkciu Object() { [native code] }, a ak dôjde k pretečeniu vnútornej vyrovnávacej pamäte, automaticky sa vytvorí väčší tvorca reťazcov.
Začiatok a koniec podreťazca, ktorý sa má z reťazca odstrániť, sú špecifikované ako prvý a druhý int parameter vymazať () funkciu.
Posledný index je exkluzívny, pretože odpočítava jeden od druhého parametra, ale počiatočný index je zahrnutý.
Syntax:
public StringBuilder delete(int start,int end)
Keď je začiatok záporný, väčší ako dĺžka struny alebo väčší ako koniec struny, a StringIndexOutOfBoundsException je hodený. Keď sú začiatok a koniec rovnaký, nevykonávajú sa žiadne úpravy.
Príklad:
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()); } }
Výkon:
9) Použitie metódy StringBuilder replace()
Jediný rozdiel medzi nahradiť () funkcia a vymazať () metóda je tretí parameter, ktorý sa používa na nahradenie znakov, ktoré boli z reťazca odstránené.
java porovnateľná
Ak je potrebné vymeniť veľkú strunu, veľkosť sa zväčší, aby sa prispôsobila dĺžke struny.
Syntax:
string.replace(int start, int end, char newChar)
Funkcia natiahnuť() Funkciu { [native code] }() je možné použiť na vytlačenie aktualizovaného reťazca potom, čo táto metóda vráti a StringBuilder .
Príklad:
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()); } }
Výkon:
Záver
V tomto článku ste sa naučili, ako nahradiť a odstrániť znaky na odstránenie podreťazca z reťazca. Prezentované techniky zahŕňajú použitie metód StringBuilder delete() a replacement(), ako aj funkcie string replace(), replaceFirst() a replaceAll().