A Java karakterlánc ReplaceAll () metódus minden egyes karakterláncot, amely megfelel a karakterlánc regexének, a megadott szöveggel helyettesíti.
A replaceAll()
módszer szintaxisa :
string.replaceAll(String regex, String replacement)
Itt a karakterlánc az String
osztály objektuma .
ReplaceAll () paraméterek
A replaceAll()
módszer két paramétert vesz fel.
- regex - egy regex (tipikus karakterlánc lehet), amelyet le kell cserélni
- csere - illeszkedő alszekciókat ezzel a karakterlánccal helyettesítjük
ReplaceAll () visszatérési érték
- A
replaceAll()
metódus új karakterláncot ad vissza, ahol az illeszkedő alszöveg minden előfordulását lecseréli a helyettesítő karakterláncra.
1. példa: Java karakterlánc ReplaceAll ()
class Main ( public static void main(String() args) ( String str1 = "aabbaaac"; String str2 = "Learn223Java55@"; // regex for sequence of digits String regex = "\d+"; // all occurrences of "aa" is replaceAll with "zz" System.out.println(str1.replaceAll("aa", "zz")); // zzbbzzac // replace a digit or sequence of digits with a whitespace System.out.println(str2.replaceAll(regex, " ")); // Learn Java @ ) )
A fenti példában "\d+"
egy reguláris kifejezés, amely egy vagy több számjeggyel egyezik. További információkért látogasson el a Java regexbe.
Menekülőkarakterek a ReplAllAll () -ban
A replaceAll()
módszer első argumentumként egy regexet vagy egy tipikus karakterláncot vehet fel. Ez azért van, mert egy tipikus karakterlánc önmagában egy regex.
A regexben vannak olyan karakterek, amelyek különleges jelentéssel bírnak. Ezek a metakarakterek:
$. | ? * + () () ()
Ha meg kell egyeznie az ezeket a metakaraktereket tartalmazó alszövegekkel, akkor elkerülheti ezeket a karaktereket, vagy használhatja a
replace()
módszert.
// Program to replace the + character class Main ( public static void main(String() args) ( String str1 = "+a-+b"; String str2 = "Learn223Java55@"; String regex = "\+"; // replace "+" with "#" using replaceAll() // need to espace "+" System.out.println(str1.replaceAll("\+", "#")); // #a-#b // replace "+" with "#" using replace() System.out.println(str1.replace("+", "#")); // #a-#b ) )
Amint láthatja, amikor a replace()
módszert alkalmazzuk, nem kell elkerülnünk a metakaraktereket. Ha többet szeretne megtudni, látogasson el ide: Java karakterlánc csere ()
Ha csak a megfelelő alszöveg első előfordulását kell kicserélnie, használja a Java karakterlánc csereFirst () metódust.