„Java“ eilutės pakeitimas () metodas

Metodas String changeAll programoje „Java“ ieško nurodytos eilutės arba nurodytos reikšmės, arba reguliariosios išraiškos išraiška, pagal kurią turi tą patį pasiūlymą, grąžina naują eilutę su susijusiais simboliais. Šiame straipsnyje sužinokime apie „Java“ pakeitimo visus eilutes metodą.

Java eilutė pakeisti viską ()

Šis metodas pakeičia kiekviena poeilutė eilutės, atitinkančios nurodytą reguliariąją išraišką su nurodytu pakeitimo_str.

„Java“ sintaksė pakeisti visas eilutes

public String replaceAll(String regex, String replace_str) 

Parametrai

    regex: reguliarioji išraiška, su kuria turi būti suderinta ši eilutė. pakeisti_str: eilutė, kuri pakeis rastą išraišką.

Grąžinimo vertė

  • Šis metodas grąžina gautą eilutę.

„Java“ metodo String.replaceAll pavyzdys

Java




// Java code to demonstrate the> // working of replaceAll()> public> class> rep2 {> > public> static> void> main(String args[])> > {> > // Initialising String> > String Str => new> String(> 'Welcome to geeksforgeeks'> );> > // original string> > System.out.print(> 'Original String : '> );> > System.out.println(Str);> > // Using replaceAll to replace regex with> > // replace_str> > System.out.print(> > 'After replacing regex with replace_str : '> );> > System.out.println(> > Str.replaceAll(> '(.*)geeks(.*)'> ,> 'ASTHA TYAGI'> ));> > }> }>

Išvestis

Original String : Welcome to geeksforgeeks After replacing regex with replace_str : ASTHA TYAGI 

Išimtys su String.replaceAll Java

Nors metodas „String changeAll“ yra labai veiksmingas „Java“, tačiau net ir jis turi tam tikrų išimčių, kaip nurodyta toliau:

1. Neteisingas reguliarusis reiškinys

Neteisingas reguliarusis reiškinys, kai perduodamas metodu raplaceAll(), iškelia PatternSyntaxException.

Pavyzdys:

Java




// Java Program to demonstrate> // replaceAll() method> import> java.io.*;> // Driver class> class> GFG {> > // main function> > public> static> void> main(String[] args)> > {> > // input string> > String str => 'GFG'> ;> > System.out.println(str);> > // NULL Regular expression> > String regex => ''> ;> > // Passing null expression in> > // replaceAll method> > str = str.replaceAll(regex,> ' '> );> > System.out.println(str);> > }> }>

Išvestis

Exception in thread 'main' java.util.regex.PatternSyntaxException: Unexpected internal error near index 1 at java.base/java.util.regex.Pattern.error(Pattern.java:2027) at java.base/java.util.regex.Pattern.compile(Pattern.java:1788) at java.base/java.util.regex.Pattern.(Pattern.java:1428) at java.base/java.util.regex.Pattern.compile(Pattern.java:1068) at java.base/java.lang.String.replaceAll(String.java:2126) at GFG.main(GFG.java:11) 

2. Nulinė reguliari išraiška

Nulinis reguliarusis reiškinys nėra priimtas naudojant „replaceAll()“ metodą, jis iškelia NullPointerException.

Pavyzdys:

Java




// Java Program to demonstrate> // replaceAll() method> import> java.io.*;> // Driver class> class> GFG {> > // main function> > public> static> void> main(String[] args)> > {> > // input string> > String str => 'GFG'> ;> > System.out.println(str);> > // NULL Regular expression> > String regex => null> ;> > // Passing null expression in> > // replaceAll method> > str = str.replaceAll(regex,> ' '> );> > System.out.println(str);> > }> }>

Išvestis

Exception in thread 'main' java.lang.NullPointerException at java.base/java.util.regex.Pattern.(Pattern.java:1426) at java.base/java.util.regex.Pattern.compile(Pattern.java:1068) at java.base/java.lang.String.replaceAll(String.java:2126) at GFG.main(GFG.java:11)