java string replace
Denne tutorial forklarer alt om Java String Replace () -metoden sammen med ReplaceAll () og ReplaceFirst () -metoder ved hjælp af eksempler:
Vi vil også udforske et par scenariebaserede eksempler og ofte stillede spørgsmål, der gør konceptet klart.
Når du gennemgår denne vejledning, vil du vide om erstatningsmetoderne (), erstatFirst () og erstatningsall (), og du kan bruge disse to metoder til strenghåndteringsproblemer.
=> Se på Java Beginners Guide her.
Hvad du lærer:
Udskift Java-streng
Før vi fortsætter, skal vi vide, at metoden Java String erstatte () har tre forskellige varianter som nævnt nedenfor:
- Udskiftning af Java-streng ()
- Java String erstatte alle ()
- Java-streng erstatteFirst ()
Alle disse varianter har deres egen betydning, og disse kan bruges baseret på kravet under enhver strengmanipulation. Hver af disse metoder har også sine egne varianter, som diskuteres sammen med deres syntaks og deres implementeringsoplysninger i sidste del af denne vejledning.
Kort sagt bruges metoden Java String erstatte () til at erstatte alle forekomster af et givet tegn med et nyt tegn.
Java String replaceAll () -metoden fungerer i overensstemmelse med det regulære udtryk og baseret på det regulære udtryk, er vi frie til at vælge, hvilken type operation vi skal have på en inputstreng.
Desuden bruges metoden Java String erstatteFirst () til at erstatte det første forekommende tegn med et nyt tegn.
Metode til udskiftning af streng ()
Som navnet antyder, bruges metoden erstatte () til at erstatte alle forekomster af en bestemt karakter af en streng med en ny karakter.
Java String Replace har to varianter som vist nedenfor.
# 1) Erstatningsmetoden for tegnet.
Syntaksen for tegn erstatter:
String replace(char originalChar, char replacingChar)
# 2) Erstatningsmetoden for tegnsekvensen.
Syntaksen for tegnsekvens erstatter:
String replace(CharSequence original, CharSequence replacing)
Udskiftning af et tegn
I nedenstående eksempel , vi initialiserer en strengvariabel. Derefter vil vi erstatte enhver specifik karakter af strengen med en ny karakter.
public class replace { public static void main(String() args) { // Initialized a String String str = 'CAT'; // Replaced the character 'C' with 'R' String replace = str.replace('C', 'R'); // Printed the Original String System.out.println('The Original String was: ' + str); // Printed the Final String after replace() operation System.out.println('The Final String is: ' + replace); } }
Produktion:
Udskiftning af tegnsekvens
I denne eksempel , vil vi diskutere om den anden form for Java String erstatte () metode.
Syntaks:
String replace(CharSequence original, CharSequence replacing)
Denne form for Java String erstatte () metode erstatter den ene tegnsekvens med den anden. I nedenstående eksempel initialiserer vi en strengvariabel og erstatter derefter char-sekvensen med den anden.
Lad os se nedenstående eksempel.
public class replace { public static void main(String() args) { // Initialized a String String str = 'Shooting'; // Replaced the character sequence 'oot' with 'out' String replace = str.replace('oot', 'out'); // Printed the Original String System.out.println('The Original String was: ' +str); // Printed the Final String after replace() char sequence operation System.out.println('The Final String is: ' +replace); } }
Produktion:
String ReplaceAll () metode
Denne metode returnerer en ny streng som output, og denne nye streng er baseret på resultatet af de regulære udtryk, som vi giver i regex.
Syntaksen for ReplaceAll:
String replaceAll(String regex, String output)
Udskiftning af alle tegn
I denne eksempel , vi vil se, hvordan replatAll () fungerer med regulære udtryk. I dette program vil vi erstatte al det hvide mellemrum mellem tegn med symbolet '%' ved hjælp af metoden erstatteAll () med regulært udtryk.
public class replaceAll { public static void main(String() args) { // Initialized a String String str = 'This is a Testing Website'; /* * Replacing all the whitespaces between * characters with the '%' */ String replaceAll = str.replaceAll('\s+', '%'); // Printed the Original String System.out.println('Before ReplaceAll() ' + str); // Printed the Final String after replaceAll() operation System.out.println('After ReplaceAll(): ' + replaceAll); } }
Produktion:
String ReplaceFirst () metode
Bortset fra erstat () og erstatAlL () har vi en anden metode kaldet erstatFirst () metode, der bruges til at erstatte den første forekommende karakter af enhver streng.
Denne metode returnerer en ny streng, hvor det første tegn erstattes med et nyt tegn. Lad os se nærmere på syntaksen for at få flere detaljer.
Syntaksen for ReplaceFirst:
String replaceFirst(char oldFirstChar, char newFirstChar)
Udskiftning af det første tegn
I dette program har vi taget en inputstreng og forsøgt at erstatte det første forekommende tegn med et nyt tegn ved hjælp af metoden erstatteFirst ().
Inden i erstatFirst () -metoden har vi bestået det gamle første tegn og det nye første tegn. Den returnerede streng erstatter den gamle første karakter med den nye første karakter.
public class ReplaceFirst { public static void main(String() args) { String str = 'PPPPP'; System.out.println(str); // Replaced the first occurrence of 'P' with 'Q' String replaceFirst = str.replaceFirst('P', 'Q'); System.out.println(replaceFirst); } }
Produktion:
Scenarier
Scenarie 1: Udskiftning af en substring ved hjælp af Java-erstatteAll () -metoden.
Forklaring: I dette scenario skal vi erstatte en understreng fra hovedstrengen med en ny understreng.
I dette program har vi gjort brug af jokertegnet '*', der efterfølges af String 'Fred'. Hver forekomst af Fred vil blive erstattet af den nye streng 'Ted'. Som vi ved, er et jokertegn et specielt tegn, som vi kan bruge til at repræsentere enhver anden karakter.
Her har vi brugt 'Fred *' dvs. for hver forekomst af 'Fred', 'Fredd', 'Fredx', 'Fredy' og så videre, det vil erstatte hver af dem med den nye streng 'Ted.' Det vil også erstatte 'Freddy' (understreng i inputstrengen til nedenstående program) med 'Tedy'.
public class replaceAll { public static void main(String() args) { // Initialized a String String str = 'Fred Freddy Franklin Michael Trevor Fredy'; // Replacing the names that start with Fred with the Ted String replaceAll = str.replaceAll('Fred*', 'Ted'); // Printed the Original String System.out.println('Before ReplaceAll() ' + str); // Printed the Final String after replaceAll() operation System.out.println('After ReplaceAll(): ' + replaceAll); } }
Produktion:
Scenarie 2: Udskiftning af en streng, der starter med en tegnsekvens med en ny streng.
Forklaring: Her skal vi erstatte en streng, der starter med en bestemt tegnsekvens med en ny streng. Vi har brugt den samme inputstreng (som et ovenstående scenario), så har vi udført regex-operationen ved hjælp af replAll.
public class replaceAll { public static void main(String() args) { // Initialized a String String str = 'Fred Freddy Franklin Michael Trevor Fredy'; // Replacing the entire String that starts with Fred with the Ted String replaceAll = str.replaceAll('Fred.*', 'Ted'); // Printed the Original String System.out.println('Before ReplaceAll() ' + str); // Printed the Final String after replaceAll() operation System.out.println('After ReplaceAll(): ' + replaceAll); } }
Produktion:
Ofte stillede spørgsmål
Q # 1) Hvordan ændres et tegn ved hjælp af erstatte () og erstatte alle ()?
Svar: Ændring af et tegn fungerer godt med både erstatningsmetoder () og erstatningsall (). Lad os se nærmere på det følgende program.
public class replaceAndReplaceAll { public static void main(String() args) { // Initialized a String variable String str = 'CUT'; // Replaced 'C' with 'P' using replace() method String replace = str.replace('C', 'P'); // Replaced 'C' with 'P' using replaceAll() method String replaceAll = str.replaceAll('C', 'P'); // Printed Original String System.out.println('Original String: ' +str); // Printed the output of replace() method System.out.println('Replace String: ' +replace); // Printed the output of replaceAll() method System.out.println('ReplaceAll String: ' +replaceAll); } }
Produktion:
Q # 2) Hvordan udskiftes et tegn i en streng i Java uden at bruge metoden erstatte ()?
Svar: I nedenstående program har vi ikke brugt erstatningsmetoden () til at erstatte det tegn, der forekommer ved indeks = 2.
public class withoutReplace { public static void main(String() args) { String str = 'This'; // Printed Original String System.out.println(str); // Replacing character at position 2 which is 'i' String replaced = str.substring(0, 2) + 'u' + str.substring(2 + 1); // Printed Replaced String System.out.println(replaced); } }
Produktion:
Q # 3) Hvordan udskiftes den sidste forekomst af en streng i Java?
Svar: I dette program har vi brugt det regulære udtryk med metoden erstatteAll () til at erstatte den sidste forekomst af en streng.
public class replaceAll { public static void main(String() args) { // Initialized a String variable String str = 'Tony Stark John Jon StarkTony'; /* * '$' means the last element of the matching pattern. * So we have replaced the last occurrence of 'Tony' with * 'Trevor' using regex = 'Tony$' */ String replaceAll = str.replaceAll('Tony$', 'Trevor'); // Printed the original element System.out.println(str); // Printed the replaced element System.out.println(replaceAll); } }
Produktion:
Q # 4) Hvordan ændres strengværdien i Java?
Svar: Der er mange Java String-metoder, der kan ændre værdien af en streng.
Lad os se på erstatningsmetoden ().
public class replace { public static void main(String() args) { String str = '1000'; System.out.println(str); // Changing the value of the Original String String changed = str.replace('000', '111'); System.out.println(changed); } }
Produktion:
oracle sql interview spørgsmål og svar
Q # 5) Hvad er et jokertegn? Forklare.
Svar: Et jokertegn er et specialtegn, der bruges til at repræsentere ethvert andet tegn. Ethvert tegn kan bruges i det indeks, hvor vi har defineret jokertegnet. Nogle af de almindelige jokertegn er '*', '?' Osv.
Lad os tage et eksempel af en streng 'spis *'. Her forekommer jokertegnet '*' ved det sidste indeks. Dette betyder, at strengen altid starter med 'spis', men det er gratis at vælge sluttegnene.
Så når du prøver at søge med inputstrengen som 'spis *', kan søgeresultatet være 'spise', 'spist', 'spiseligt', 'spise' og så videre.
Konklusion
I denne vejledning har vi undersøgt metoderne Java String erstatte () og erstatte alle () i detaljer. Bortset fra disse to metoder lærte vi også om metoden replacereFirst ().
Tilstrækkelige programmeringseksempler er inkluderet i denne vejledning for at give dig flere detaljer om hver af disse tre metoder. Eksempler på regulært udtryk blev også leveret som en del af metoden erstatte All ().
Vi håber, at de scenariebaserede og ofte stillede spørgsmål, der er inkluderet i denne vejledning, ville have givet dig en god indsigt i Java String Replace.
=> Besøg her for at lære Java fra bunden.
Anbefalet læsning
- Java String Tutorial | Java strengmetoder med eksempler
- Java String med String Buffer og String Builder Tutorial
- Java String Split () Metode - Sådan opdeles en streng i Java
- Java strenglængde () Metode med eksempler
- Java String indeholder () Metodevejledning med eksempler
- Java-streng sammenlignet med metode med programmeringseksempler
- Java String Array- Vejledning med kodeeksempler
- Java-strengindeks Af metode med kodeeksempler