Remplacement multiple de chaîne Java

Bibliothèque standard Un peu compliquée mais peut être rapide

    String str = "$aTEST$bTESTTEST$cTESTTEST$aTEST$bTESTTEST$cTESTTEST";
    //Avant le remplacement,Après remplacement
    Map<String, String> map = new HashMap<>();
    map.put("$a", "AaA");
    map.put("$b", "BbB");
    //・
    //・
    //Processus de remplacement(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 Concise mais plus lente que prévu. .. ..

    String str = "$aTEST$bTESTTEST$cTESTTEST$aTEST$bTESTTEST$cTESTTEST";
    //Avant le remplacement,Après remplacement
    Map<String, String> map = new HashMap<>();
    map.put("$a", "AaA");
    map.put("$b", "BbB");
    //・
    //・
    //Processus de remplacement(org.apache.commons.lang3.StringUtils)
    StringUtils.replaceEach(str, map.keySet().toArray(new String[map.size()]), map.values().toArray(new String[map.size()]));

Recommended Posts

Remplacement multiple de chaîne Java
Chaîne Java
Remplacement de la chaîne de caractères
[Java] Remplissage de la chaîne de caractères
Traitement des chaînes Java
Chaîne divisée (Java)
[Java] Comparaison des chaînes de caractères et && et ||
[Note] Java: recherche de chaînes de caractères
[Note] Java: enquête sur les chaînes de caractères
À propos de la classe Java String
Sous-chaîne de classe Java inflexible String
Réflexion sur la manipulation de chaînes Java
[Java] À propos de String et StringBuilder
[Java] Jugement de condition OR multiple
[Java] Combiner plusieurs listes (collections)
[Java] Comparaison de vitesse de combinaison de chaînes
Opération pour connecter plusieurs Streams @Java
Diverses méthodes de la classe Java String
Code de création de chaîne arbitraire par Java
Java
Chaîne
Etudier Java 8 (String Joiner et Join)
Java
[Java] Comparaison correcte du type String
[Java & Kotlin] Créer un RecyclerView avec plusieurs sélections
Attrapez plusieurs exceptions ensemble dans Java
[Java] Divise une chaîne de caractères par un caractère spécifié
Lors de la recherche de plusieurs dans un tableau Java
Conversion de type de données de date Java (date, calendrier, chaîne)
Conversion pleine largeur → demi-largeur avec Java String (kana pleine largeur → kana demi-largeur)
Concernant la comparaison d'équivalence de type de chaîne en Java
[Java] Aide-mémoire de classe de type de données / chaîne de caractères
Trier par plusieurs conditions à l'aide de Java Stream
Remarques sur les opérateurs utilisant Java ~ Type chaîne ~
Troncature de chaîne Java String Byte Prend en charge les caractères déformés
[Java] Convertit null du type Object en type String
Comment sortir une chaîne Java sur l'écran de la console
[Java] Jugement de caractères / formatage de la chaîne de caractères (AOJ11 - nombre de caractères)
Toutes les mêmes chaînes de code de hachage en Java
Diviser une chaîne avec ". (Dot)" en Java
Conversion de type Java 8 LocalDateTime (String, java.util.Date)
Comment basculer entre plusieurs versions de Java
Cheking Prime number - Exemples de programmes de chaîne Java
Conversion de type du type java Big Decimal au type String
Installation Java (Mac, Homebrew, gestion de versions multiples)