Table des matières
Contenu de la question
Solution de contournement
Maison développement back-end Golang Manière idiomatique de parcourir une chaîne et de remplacer les valeurs de la chaîne d'origine par des valeurs mappées

Manière idiomatique de parcourir une chaîne et de remplacer les valeurs de la chaîne d'origine par des valeurs mappées

Feb 10, 2024 am 08:45 AM
键值对

Manière idiomatique de parcourir une chaîne et de remplacer les valeurs de la chaîne dorigine par des valeurs mappées

L'éditeur PHP Xinyi apporte une manière idiomatique de parcourir une chaîne et de remplacer les valeurs de la chaîne d'origine par des valeurs mappées. Cette méthode peut aider les développeurs à simplifier le processus d'exploitation des chaînes et à améliorer l'efficacité du développement. En utilisant un tableau mappé, les développeurs peuvent définir un ensemble de paires clé-valeur, puis utiliser une méthode itérative pour remplacer des valeurs spécifiques dans la chaîne d'origine par des valeurs mappées. Cette méthode est non seulement simple et facile à comprendre, mais peut également être appliquée à divers scénarios, tels que le traitement de données, le remplacement de texte, etc. Les développeurs débutants et expérimentés peuvent bénéficier de cette approche pour gérer les opérations sur les chaînes rapidement et efficacement.

Contenu de la question

J'ai une solution de travail concernant l'itération d'une chaîne et le mappage rune sur une carte

package main

import (
    "fmt"
)

func main() {

    numToString := map[rune]string{
        '0': "zero",
        '1': "one",
        '2': "two",
        '3': "three",
        '4': "four",
        '5': "five",
        '6': "six",
        '7': "seven",
        '8': "eight",
        '9': "nine",
    }

    testStr := "one two 3 four"
    newStr := ""
    for _, char := range testStr {
        if val, ok := numToString[char]; ok {
            newStr += val
            continue
        }
        newStr += string(char)
    }
    // prints one two three four
    fmt.Println(string(newStr))
}
Copier après la connexion

Cela correspond à mes souhaits... mais je suis curieux de trouver une manière plus propre (si possible) plutôt que d'allouer une toute nouvelle chaîne à construire à partir de la chaîne d'origine. Je préférerais faire cela si je pouvais modifier le contenu original sur place lors de l'itération.

Voici le terrain de jeu

Solution de contournement

Utilisez strings.Replacer pour remplacer les chaînes.

var numToString = strings.NewReplacer(
    "0", "zero",
    "1", "one",
    "2", "two",
    "3", "three",
    "4", "four",
    "5", "five",
    "6", "six",
    "7", "seven",
    "8", "eight",
    "9", "nine").Replace

func main() {
    testStr := "one two 3 four"
    newStr := numToString(testStr)
    fmt.Println(newStr)
}
Copier après la connexion

https://www.php.cn/link/7d420e2b2939762031eed0447a9be19f

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La différence entre les crochets et les accolades dans Vue La différence entre les crochets et les accolades dans Vue May 02, 2024 pm 10:06 PM

Les crochets sont utilisés pour accéder aux éléments du tableau, à la liaison de propriétés dynamiques et aux propriétés calculées, tandis que les accolades sont utilisées pour créer des littéraux d'objet, des expressions de modèle et des méthodes d'appel. L'utilisation correcte de ces symboles dans Vue.js est cruciale pour un traitement efficace des données et la création d'applications interactives.

Comment utiliser la carte dans vue Comment utiliser la carte dans vue May 02, 2024 pm 09:54 PM

Les cartes sont utilisées dans Vue.js pour stocker des paires clé-valeur, où les clés peuvent être de n'importe quel type de données. Les méthodes d'utilisation incluent : la création d'une carte, l'ajout et l'accès à des données, la suppression de données et le parcours de données. La carte est réactive et met automatiquement à jour la vue lorsqu'elle change.

Structures de données et algorithmes Java : explication détaillée Structures de données et algorithmes Java : explication détaillée May 08, 2024 pm 10:12 PM

Les structures de données et les algorithmes sont à la base du développement Java. Cet article explore en profondeur les structures de données clés (telles que les tableaux, les listes chaînées, les arbres, etc.) et les algorithmes (tels que le tri, la recherche, les algorithmes graphiques, etc.) en Java. Ces structures sont illustrées par des exemples pratiques, notamment l'utilisation de tableaux pour stocker les scores, de listes chaînées pour gérer les listes de courses, de piles pour implémenter la récursion, de files d'attente pour synchroniser les threads, ainsi que d'arbres et de tables de hachage pour une recherche et une authentification rapides. Comprendre ces concepts vous permet d'écrire du code Java efficace et maintenable.

Comment implémenter des structures de données sans verrouillage dans la programmation simultanée Java ? Comment implémenter des structures de données sans verrouillage dans la programmation simultanée Java ? May 02, 2024 am 10:21 AM

Structures de données sans verrouillage dans la programmation simultanée Java Dans la programmation simultanée, les structures de données sans verrouillage sont cruciales, permettant à plusieurs threads d'accéder et de modifier simultanément les mêmes données sans acquérir de verrous. Cela améliore considérablement les performances et le débit des applications. Cet article présentera les structures de données sans verrouillage couramment utilisées et leur implémentation en Java. L'opération CAS Compare-and-Swap (CAS) est au cœur des structures de données sans verrouillage. Il s'agit d'une opération atomique qui met à jour une variable en comparant la valeur actuelle avec la valeur attendue. Si la valeur de la variable est égale à la valeur attendue, la mise à jour réussit ; sinon, la mise à jour échoue. File d'attente sans verrouillage ConcurrentLinkedQueue est une file d'attente sans verrouillage, implémentée à l'aide d'une structure basée sur une liste chaînée. Il permet une insertion et une suppression efficaces

Applications de mise en cache PHP Redis et bonnes pratiques Applications de mise en cache PHP Redis et bonnes pratiques May 04, 2024 am 08:33 AM

Redis est un cache clé-valeur hautes performances. L'extension PHPRedis fournit une API pour interagir avec le serveur Redis. Suivez les étapes suivantes pour vous connecter à Redis, stocker et récupérer des données : Connecter : utilisez les classes Redis pour vous connecter au serveur. Stockage : utilisez la méthode set pour définir des paires clé-valeur. Récupération : utilisez la méthode get pour obtenir la valeur de la clé.

Comment utiliser les fonctions PHP pour traiter les données JSON ? Comment utiliser les fonctions PHP pour traiter les données JSON ? May 04, 2024 pm 03:21 PM

PHP fournit les fonctions suivantes pour traiter les données JSON : Analyser les données JSON : utilisez json_decode() pour convertir une chaîne JSON en un tableau PHP. Créer des données JSON : utilisez json_encode() pour convertir un tableau ou un objet PHP en chaîne JSON. Obtenez des valeurs spécifiques des données JSON : utilisez les fonctions de tableau PHP pour accéder à des valeurs spécifiques, telles que des paires clé-valeur ou des éléments de tableau.

Confusion pour les débutants Java : application d'algorithmes et de structures de données Confusion pour les débutants Java : application d'algorithmes et de structures de données May 07, 2024 pm 05:57 PM

Guide du débutant sur Java : applications réelles des algorithmes et des structures de données Les algorithmes et les structures de données sont les pierres angulaires de la programmation Java. Comprendre leur application est essentiel pour écrire un code efficace et maintenable. Cet article explore les utilisations courantes des algorithmes et des structures de données dans des scénarios réels pour vous aider à comprendre leur valeur. Algorithmes de tri Les algorithmes de tri sont utilisés pour organiser une liste d'éléments de manière ordonnée. Par exemple : int[]numbers={5,2,8,3,9};//Utilisez l'algorithme de tri rapide pour trier le tableau de nombres Arrays.sort(numbers);//Affichez le tableau trié pour(intnumber: number ){

Fonctions de regroupement de clés de tableau PHP et guide d'application Fonctions de regroupement de clés de tableau PHP et guide d'application Apr 30, 2024 am 10:36 AM

La fonction de regroupement de clés de tableau PHP peut classer les clés de tableau selon des règles spécifiées pour l'agrégation, le filtrage et la transformation des données. Les fonctions intégrées incluent array_column(), array_combine() et array_group_by(). Par exemple, vous pouvez organiser et traiter efficacement les données du tableau en regroupant les commandes par ID utilisateur ou en filtrant les clés par suffixe.

See all articles