Il pacchetto strings fornisce funzioni per lavorare con le stringhe.
Qui sotto ci sono alcune delle funzioni del pacchetto; dai un'occhiata alla documentazione per vedere le altre!
| Ruolo | Funzione | Scopo |
|---|---|---|
| Conversione tra maiuscole e minuscole | ToLower | Converte una stringa in minuscolo |
| Conversione tra maiuscole e minuscole | ToUpper | Converte una stringa in maiuscolo |
| Ricerca | Contains | Verifica se una stringa contiene una sottostringa specifica |
| Ricerca | Count | Conta le occorrenze non sovrapposte di una sottostringa |
| Ricerca | HasPrefix | Verifica se una stringa inizia con una sottostringa specifica |
| Ricerca | HasSuffix | Verifica se una stringa termina con una sottostringa specifica |
| Ricerca | Index | Restituisce l'indice della prima occorrenza di una sottostringa, oppure -1 |
| Modifica | Replace | Sostituisce fino a n occorrenze di una sottostringa |
| Modifica | ReplaceAll | Sostituisce tutte le occorrenze di una sottostringa |
| Modifica | TrimSpace | Rimuove gli spazi bianchi all'inizio e alla fine |
| Divisione e unione | Fields | Divide una stringa in parole in base agli spazi bianchi |
| Divisione e unione | FieldsSeq | Restituisce una parola alla volta |
| Divisione e unione | Join | Unisce un array di stringhe con un separatore |
| Divisione e unione | Split | Divide una stringa in parti in base a un separatore |
| Divisione e unione | SplitSeq | Restituisce una parte alla volta |
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