Java-merkkijono korvaa kaikki ()

Java-merkkijono ReplaceAll () -menetelmä korvaa jokaisen merkkijonon regexiä vastaavan alimerkkijonon määritetyllä tekstillä.

Menetelmän syntaksi replaceAll()on:

 string.replaceAll(String regex, String replacement)

Tässä merkkijono on Stringluokan objekti .

korvaa kaikki () -parametrit

replaceAll()Menetelmässä otetaan kaksi parametria.

  • regex - regex (voi olla tyypillinen merkkijono), joka on korvattava
  • korvaavat - sopivat alimerkinnät korvataan tällä merkkijonolla

returnAll () palautusarvo

  • replaceAll()Menetelmä palauttaa uuden merkkijonon, jossa kukin esiintyminen sovitus osajonon korvataan korvaava merkkijono.

Esimerkki 1: Java-merkkijono 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 @ ) )

Yllä olevassa esimerkissä "\d+"on säännöllinen lauseke, joka vastaa yhtä tai useampaa numeroa. Lisätietoja on Java-regexissä.

Pakenevat merkit korvaavassaAll ()

replaceAll()Menetelmä voi ottaa regex tai tyypillinen merkkijonon ensimmäisenä argumenttina. Se johtuu siitä, että tyypillinen merkkijono sinänsä on regex.

Regexissä on merkkejä, joilla on erityinen merkitys. Nämä metahahmot ovat:

 $. | ? * + () () ()

Jos sinun on sovitettava yhteen nämä metahahmot sisältävät alimerkkijonot, voit joko välttää nämä merkit tai käyttää replace()menetelmää.

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

Kuten näette, replace()menetelmää käytettäessä meidän ei tarvitse välttää metamerkkejä. Lisätietoja on osoitteessa Java Java -merkkijono korvaa ()

Jos joudut korvaamaan vastaavan alimerkkijonon ensimmäisen esiintymän, käytä Java-merkkijonon korvaavaFirst () -menetelmää.

Mielenkiintoisia artikkeleita...