Le paquet strings fournit des fonctions pour manipuler les strings.
En voici quelques-unes ; consulte la documentation pour découvrir les autres !
| Rôle | Fonction | Objectif |
|---|---|---|
| Conversion de casse | ToLower | Convertir une string en minuscules |
| Conversion de casse | ToUpper | Convertir une string en majuscules |
| Recherche | Contains | Vérifier si une string contient une sous-chaîne donnée |
| Recherche | Count | Compter les occurrences d'une sous-chaîne sans chevauchement |
| Recherche | HasPrefix | Vérifier si une string commence par une sous-chaîne donnée |
| Recherche | HasSuffix | Vérifier si une string se termine par une sous-chaîne donnée |
| Recherche | Index | Renvoyer l'indice de la première occurrence d'une sous-chaîne, ou -1 |
| Modification | Replace | Remplacer jusqu'à n occurrences d'une sous-chaîne |
| Modification | ReplaceAll | Remplacer toutes les occurrences d'une sous-chaîne |
| Modification | TrimSpace | Supprimer les espaces en début et en fin de chaîne |
| Découpage et assemblage | Fields | Découper une string en mots selon les espaces |
| Découpage et assemblage | FieldsSeq | Obtenir chaque mot un par un |
| Découpage et assemblage | Join | Assembler un slice de strings avec un séparateur |
| Découpage et assemblage | Split | Découper une string en parties selon un séparateur |
| Découpage et assemblage | SplitSeq | Obtenir chaque partie une par une |
import (
"fmt"
"strings"
)
// Case conversion
strings.ToLower("Gopher") // "gopher"
strings.ToUpper("Gopher") // "GOPHER"
// Searching
strings.Contains("Apple", "le") // true
strings.Index("Apple", "le") // 3
strings.Index("Apple", "xyz") // -1
strings.Count("test", "t") // 2
strings.HasPrefix("Gopher", "Go") // true
strings.HasSuffix("Gopher", "er") // true
// Modifying
strings.TrimSpace(" hello ") // "hello"
strings.Replace("aabbcc", "b", "x", 1) // "aaxbcc"
strings.ReplaceAll("aabbcc", "b", "x") // "aaxxcc"
// Splitting or Joining
strings.Fields(" a b\tc ") // []string{"a", "b", "c"}
strings.Split("a,b,c", ",") // []string{"a", "b", "c"}
strings.Join([]string{"a", "b", "c"}, ",") // "a,b,c"
// You do not need to worry about this range syntax yet.
// It is covered later in the range iteration concept.
for word := range strings.FieldsSeq(" a b\tc ") {
fmt.Println(word)
}
// Output:
// a
// b
// c
for part := range strings.SplitSeq("a,b,c", ",") {
fmt.Println(part)
}
// Output:
// a
// b
// c