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

Comment utiliser le traitement des chaînes dans Go ?

WBOY
Libérer: 2023-05-11 16:21:38
original
673 Les gens l'ont consulté

Go, en tant que langage de programmation puissant, fournit de nombreuses fonctions et méthodes de traitement de chaînes. Afin que nous puissions mieux maîtriser ces connaissances, cet article présentera le type de chaîne et les fonctions de base de traitement des chaînes dans Go, notamment la création, la concaténation, la coupe, la comparaison et la recherche de chaînes.

  1. Type de chaîne

Dans Go, le type de chaîne est défini comme une séquence de caractères en lecture seule, tapez chaîne. Une valeur de chaîne est composée d'une séquence de caractères entourée d'une paire de guillemets doubles, par exemple :

str := "Hello, world!"
Copier après la connexion
Copier après la connexion

Les chaînes sont en lecture seule et nous ne pouvons pas modifier certains caractères de la chaîne. Vous pouvez modifier la valeur d'une chaîne en la réattribuant, par exemple :

str := "Hello, world!"
str = "Hello, Golang!"
Copier après la connexion
  1. Création de chaînes

Il existe de nombreuses façons de créer des chaînes, en voici quelques-unes :

  • Déclaration directe et affectation

Par exemple :

str := "Hello, world!"
Copier après la connexion
Copier après la connexion

Cette méthode est la méthode la plus simple et la plus couramment utilisée. Il convient de noter que dans Go, les caractères spéciaux dans les chaînes entre guillemets doivent être représentés par des caractères d'échappement, par exemple :

str := "This is a "quoted" string."
Copier après la connexion
  • Créer à l'aide de tableaux de caractères

Créer des chaînes via des tableaux de caractères est également un moyen réalisable, par exemple :

str := []byte{'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '!'}
str_1 := string(str)
Copier après la connexion

Le code ci-dessus crée un tableau de caractères de type octet et le convertit en type chaîne. Il convient de noter que dans Go, les chaînes et les tableaux de caractères sont de deux types différents.

  • Créer en utilisant fmt.Sprintf

Nous pouvons utiliser la fonction fmt.Sprintf pour créer une chaîne, similaire à la fonction sprintf en langage C. Par exemple :

str := fmt.Sprintf("The value of x is %d", x)
Copier après la connexion
  1. Concaténation de chaînes

La concaténation de chaînes peut utiliser l'opérateur "+", par exemple :

str1 := "Hello"
str2 := ", world!"
result := str1 + str2
Copier après la connexion

ou utiliser la fonction fmt.Sprintf, par exemple :

str1 := "Hello"
str2 := ", world!"
result := fmt.Sprintf("%s%s", str1, str2)
Copier après la connexion

Il est à noter que le La concaténation de chaînes générera de nouvelles chaînes, et lorsqu'il y a de nombreuses opérations, un grand nombre de chaînes temporaires seront générées, ce qui peut affecter les performances du programme.

  1. String Cutting

String Cutting peut utiliser la fonction Split dans le package strings, par exemple :

str := "apple,orange,peach"
slice := strings.Split(str, ",")
Copier après la connexion

Le code ci-dessus utilise des virgules comme séparateur pour couper la chaîne str en une tranche.

  1. Comparaison de chaînes

La comparaison de chaînes peut utiliser l'opérateur "==" ou la fonction Equal dans le package de chaînes, par exemple :

str1 := "Hello"
str2 := "world"
equal := (str1 == str2)
equal_1 := strings.EqualFold(str1, str2)
Copier après la connexion

Le code ci-dessus utilise l'opérateur "==" et la fonction Equal dans le package de chaînes respectivement. La fonction EqualFold compare deux chaînes pour l'égalité.

Il convient de noter que dans Go, la comparaison de chaînes est sensible à la casse. Si vous devez ne pas respecter la casse, vous pouvez utiliser la fonction EqualFold dans le package de chaînes.

  1. Recherche de chaînes

Go fournit plusieurs fonctions pour rechercher des chaînes, notamment :

  • strings.Contains : détermine si une chaîne contient une autre chaîne.
str := "Hello, world!"
contains := strings.Contains(str, "world") // 返回true
Copier après la connexion
  • strings.Index : Recherchez la première occurrence d'une chaîne dans une autre chaîne.
str := "Hello, world!"
index := strings.Index(str, "world") // 返回7
Copier après la connexion
  • strings.LastIndex : Recherchez la dernière occurrence d'une chaîne dans une autre chaîne.
str := "Hello, world!"
index := strings.LastIndex(str, "o") // 返回8
Copier après la connexion
  • strings.HasPrefix : Détermine si une chaîne commence par une autre chaîne.
str := "Hello, world!"
hasPrefix := strings.HasPrefix(str, "Hello") // 返回true
Copier après la connexion
  • strings.HasSuffix : Détermine si une chaîne se termine par une autre chaîne.
str := "Hello, world!"
hasSuffix := strings.HasSuffix(str, "world!") // 返回true
Copier après la connexion

Résumé

Cet article présente les fonctions et méthodes de base de traitement des chaînes. Dans le développement réel, nous utiliserons davantage d'opérations sur les chaînes, telles que le remplacement, la conversion de casse, la sortie formatée, etc. Les lecteurs qui ont besoin d’une compréhension approfondie peuvent se référer aux documents officiels et aux exemples de codes pour un apprentissage plus approfondi.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal