Maison > développement back-end > Golang > le corps du texte

## Comment puis-je convertir des caractères minuscules en majuscules dans une chaîne Go ?

Barbara Streisand
Libérer: 2024-10-26 02:02:02
original
618 Les gens l'ont consulté

## How Can I Convert Lowercase Characters to Uppercase in a Go String?

Modification des chaînes dans Go

Q : Je souhaite convertir les caractères minuscules en majuscules dans une chaîne, mais Go renvoie une erreur : "impossible d'attribuer à new_str[i] ". Comment puis-je y parvenir ?

A : Comprendre l'immuabilité des chaînes Go

Dans Go, les chaînes sont immuables, ce qui signifie qu'une fois créées, leur contenu ne peut pas être modifié. Ce comportement est conforme à la spécification du langage Go, qui stipule :

"Les chaînes sont immuables : une fois créées, il est impossible de modifier le contenu d'une chaîne."

A : Contourner l'immuabilité des chaînes.

Pour modifier une chaîne dans Go, vous avez deux options :

  1. Convertissez la chaîne en tranche []byte et modifiez la tranche.
  2. Créez une nouvelle chaîne avec les modifications souhaitées.

A : Modification des chaînes à l'aide de []byte Slices

Voici une version modifiée de votre code qui utilise une []byte slice pour modifier les caractères.

<code class="go">package main

import (
    "bytes"
    "fmt"
)

func ToUpper(str string) string {
    strBytes := []byte(str)
    for i := 0; i < len(str); i++ {
        if str[i] >= 'a' && str[i] <= 'z' {
            chr := uint8(rune(str[i]) - 'a' + 'A')
            strBytes[i] = chr
        }
    }
    return string(strBytes)
}

func main() {
    fmt.Println(ToUpper("cdsrgGDH7865fxgh"))
}
</code>
Copier après la connexion

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!