Metoda Java String replaceAll () zastępuje każdy podciąg pasujący do wyrażenia regularnego ciągu określonym tekstem.
Składnia replaceAll()
metody to:
string.replaceAll(String regex, String replacement)
Tutaj string jest obiektem String
klasy.
replaceAll () Parametry
replaceAll()
Sposób dwa parametry.
- regex - wyrażenie regularne (może być typowym ciągiem znaków), które ma zostać zastąpione
- zamiana - pasujące podciągi są zastępowane tym łańcuchem
replaceAll () Wartość zwracana
replaceAll()
Metoda zwraca nowy ciąg, gdzie każde wystąpienie podciągu pasującego jest zastępowany zastępczej ciąg.
Przykład 1: Java String 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 @ ) )
W powyższym przykładzie "\d+"
jest wyrażeniem regularnym, które dopasowuje jedną lub więcej cyfr. Aby dowiedzieć się więcej, odwiedź Java regex.
Escaping Characters w replaceAll ()
replaceAll()
Metoda może regex lub typowy ciąg jako pierwszy argument. Dzieje się tak, ponieważ typowy ciąg sam w sobie jest wyrażeniem regularnym.
W wyrażeniu regularnym są znaki, które mają specjalne znaczenie. Te metaznaki to:
$. | ? * + () () ()
Jeśli chcesz dopasować podciąg zawierający te metaznaki, możesz zmienić znaczenie tych znaków używając lub użyć
replace()
metody.
// 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 ) )
Jak widać, kiedy używamy replace()
metody, nie musimy uciekać od metaznaków. Aby dowiedzieć się więcej, odwiedź: Java String replace ()
Jeśli chcesz zamienić tylko pierwsze wystąpienie pasującego podciągu, użyj metody Java String replaceFirst ().