Mehrfacher Ersatz für Java-Zeichenfolgen

Standardbibliothek Etwas kompliziert, kann aber schnell sein

    String str = "$aTEST$bTESTTEST$cTESTTEST$aTEST$bTESTTEST$cTESTTEST";
    //Vor dem Austausch,Nach dem Austausch
    Map<String, String> map = new HashMap<>();
    map.put("$a", "AaA");
    map.put("$b", "BbB");
    //・
    //・
    //Austauschprozess(java.util.regex.Matcher)
    Matcher matcher = Pattern.compile(map.keySet().stream().map(Pattern::quote).collect(Collectors.joining("|"))).matcher(str);
    StringBuffer sb = new StringBuffer();
    while (matcher.find()) {
        matcher.appendReplacement(sb, map.get(matcher.group()));
    }
    matcher.appendTail(sb);
    sb.toString();

Appache Commons Library Prägnant, aber langsamer als ich erwartet hatte. .. ..

    String str = "$aTEST$bTESTTEST$cTESTTEST$aTEST$bTESTTEST$cTESTTEST";
    //Vor dem Austausch,Nach dem Austausch
    Map<String, String> map = new HashMap<>();
    map.put("$a", "AaA");
    map.put("$b", "BbB");
    //・
    //・
    //Austauschprozess(org.apache.commons.lang3.StringUtils)
    StringUtils.replaceEach(str, map.keySet().toArray(new String[map.size()]), map.values().toArray(new String[map.size()]));

Recommended Posts

Mehrfacher Ersatz für Java-Zeichenfolgen
Java-Zeichenfolge
Ersetzen von Zeichenketten
[Java] Auffüllen von Zeichenfolgen
Java-String-Verarbeitung
Geteilter String (Java)
[Java] Vergleich von Zeichenketten und && und ||
[Hinweis] Java: Zeichenfolgensuche
[Hinweis] Java: Zeichenkettenübersicht
Informationen zur Java String-Klasse
Java unflexibler String-Klassen-Teilstring
Reflexion über die Manipulation von Java-Strings
[Java] Über String und StringBuilder
[Java] Mehrfach-ODER-Bedingungsbeurteilung
[Java] Mehrere Listen (Sammlungen) kombinieren
[Java] Geschwindigkeitsvergleich der Zeichenfolgenkombination
Vorgang zum Verbinden mehrerer Streams @Java
Verschiedene Methoden der Java String Klasse
Beliebiger Code zum Erstellen von Zeichenfolgen durch Java
Java
String
Java 8 studieren (String Joiner und Join)
Java
[Java] Korrekter Vergleich des String-Typs
[Java & Kotlin] Erstellen Sie eine RecyclerView mit mehreren Auswahlen
Fangen Sie mehrere Ausnahmen zusammen in Java
[Java] Teilen Sie eine Zeichenfolge durch ein angegebenes Zeichen
Bei der Suche nach mehreren in einem Java-Array
Konvertierung des Java-Datumsdatentyps (Datum, Kalender, Zeichenfolge)
Konvertierung in voller Breite → halbe Breite mit Java-Zeichenfolge (Kana in voller Breite → Kana in halber Breite)
In Bezug auf den Vergleich der Zeichenfolgentypäquivalenz in Java
[Java] Spickzettel für Datentyp / Zeichenkettenklasse
Mit Java Stream nach mehreren Bedingungen sortieren
Hinweise zu Operatoren, die Java ~ String type ~ verwenden
Java String Byte String-Kürzung Unterstützt verstümmelte Zeichen
[Java] Konvertiert Null vom Objekttyp in String-Typ
So geben Sie eine Java-Zeichenfolge auf dem Konsolenbildschirm aus
[Java] Zeichenbeurteilung / Zeichenfolgenformatierung (AOJ11 - Zeichenanzahl)
Alle gleichen Hash-Code-Zeichenfolgen in Java
Teilen Sie eine Zeichenfolge in Java mit ". (Dot)"
Java 8 LocalDateTime-Typkonvertierung (String, java.util.Date)
So wechseln Sie zwischen mehreren Java-Versionen
Cheking Prime number - Beispiele für Java-String-Programme
Typkonvertierung vom Java Big Decimal-Typ zum String-Typ
Java-Installation (Mac, Homebrew, Verwaltung mehrerer Versionen)