„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)