¿Cómo dividir una string en Golang?

En el lenguaje Go, las strings son diferentes de otros lenguajes como Java , C++ , Python , etc. Es una secuencia de caracteres de ancho variable donde todos y cada uno de los caracteres están representados por uno o más bytes usando la codificación UTF-8. En Go strings, puede dividir una string en un segmento con la ayuda de las siguientes funciones. Estas funciones se definen en el paquete de strings, por lo que debe importar el paquete de strings en su programa para acceder a estas funciones:
1. Dividir: esta función divide una string en todas las substrings separadas por el separador dado y devuelve un segmento que contiene estas substrings.
Sintaxis: 

func Split(str, sep string) []string

Aquí, str es la string y sep es el separador. Si str no contiene el sep dado y sep no está vacío, devolverá un segmento de longitud 1 que contiene solo str . O si la separación está vacía, se dividirá después de cada secuencia UTF-8. O si tanto str como sep están vacíos, devolverá un segmento vacío. 
Ejemplo:

C

// Go program to illustrate how to split a string
package main
 
import (
    "fmt"
    "strings"
)
 
// Main function
func main() {
 
    // Creating and initializing the strings
    str1 := "Welcome, to the, online portal, of GeeksforGeeks"
    str2 := "My dog name is Dollar"
    str3 := "I like to play Ludo"
 
    // Displaying strings
    fmt.Println("String 1: ", str1)
    fmt.Println("String 2: ", str2)
    fmt.Println("String 3: ", str3)
 
    // Splitting the given strings
    // Using Split() function
    res1 := strings.Split(str1, ",")
    res2 := strings.Split(str2, "")
    res3 := strings.Split(str3, "!")
    res4 := strings.Split("", "GeeksforGeeks, geeks")
 
    // Displaying the result
 
    fmt.Println("\nResult 1: ", res1)
    fmt.Println("Result 2: ", res2)
    fmt.Println("Result 3: ", res3)
    fmt.Println("Result 4: ", res4)
 
}

Producción:

String 1:  Welcome, to the, online portal, of GeeksforGeeks
String 2:  My dog name is Dollar
String 3:  I like to play Ludo

Result 1:  [Welcome  to the  online portal  of GeeksforGeeks]
Result 2:  [M y   d o g   n a m e   i s   D o l l a r]
Result 3:  [I like to play Ludo]
Result 4:  []

2. SplitAfter: esta función divide una string en todas las substrings después de cada instancia del separador dado y devuelve un segmento que contiene estas substrings.
Sintaxis: 

func SplitAfter(str, sep string) []string

Aquí, str es la string y sep es el separador. Si str no contiene el sep dado y sep no está vacío, devolverá un segmento de longitud 1 que contiene solo str . O si la separación está vacía, se dividirá después de cada secuencia UTF-8. O si tanto str como sep están vacíos, devolverá un segmento vacío. 
Ejemplo:

C

// Go program to illustrate how to split a string
package main
 
import (
    "fmt"
    "strings"
)
 
// Main function
func main() {
 
    // Creating and initializing the strings
    str1 := "Welcome, to the, online portal, of GeeksforGeeks"
    str2 := "My dog name is Dollar"
    str3 := "I like to play Ludo"
 
    // Displaying strings
    fmt.Println("String 1: ", str1)
    fmt.Println("String 2: ", str2)
    fmt.Println("String 3: ", str3)
 
    // Splitting the given strings
    // Using SplitAfter() function
    res1 := strings.SplitAfter(str1, ",")
    res2 := strings.SplitAfter(str2, "")
    res3 := strings.SplitAfter(str3, "!")
    res4 := strings.SplitAfter("", "GeeksforGeeks, geeks")
 
    // Displaying the result
    fmt.Println("\nResult 1: ", res1)
    fmt.Println("Result 2: ", res2)
    fmt.Println("Result 3: ", res3)
    fmt.Println("Result 4: ", res4)
 
}

Producción:

String 1:  Welcome, to the, online portal, of GeeksforGeeks
String 2:  My dog name is Dollar
String 3:  I like to play Ludo

Result 1:  [Welcome,  to the,  online portal,  of GeeksforGeeks]
Result 2:  [M y   d o g   n a m e   i s   N a w a b]
Result 3:  [I like to play Ludo]
Result 4:  []

3. SplitAfterN: esta función divide una string en todas las substrings después de cada instancia del separador dado y devuelve un segmento que contiene estas substrings.
Sintaxis: 

func SplitAfterN(str, sep string, m int) []string

Aquí, str es la string, sep es el separador y m se usa para encontrar el número de substrings a devolver. Aquí, si m>0 , entonces devuelve como máximo m substrings y la última substring de string no se dividirá. Si m == 0 , entonces devolverá nil. Si m<0 , devolverá todas las substrings.
Ejemplo:

C

// Go program to illustrate how to split a string
package main
 
import (
    "fmt"
    "strings"
)
 
// Main function
func main() {
 
    // Creating and initializing the strings
    str1 := "Welcome, to the, online portal, of GeeksforGeeks"
    str2 := "My dog name is Dollar"
    str3 := "I like to play Ludo"
 
    // Displaying strings
    fmt.Println("String 1: ", str1)
    fmt.Println("String 2: ", str2)
    fmt.Println("String 3: ", str3)
 
    // Splitting the given strings
    // Using SplitAfterN() function
    res1 := strings.SplitAfterN(str1, ",", 2)
    res2 := strings.SplitAfterN(str2, "", 4)
    res3 := strings.SplitAfterN(str3, "!", 1)
    res4 := strings.SplitAfterN("", "GeeksforGeeks, geeks", 3)
 
    // Displaying the result
    fmt.Println("\nResult 1: ", res1)
    fmt.Println("Result 2: ", res2)
    fmt.Println("Result 3: ", res3)
    fmt.Println("Result 4: ", res4)
 
}

Producción:

String 1:  Welcome, to the, online portal, of GeeksforGeeks
String 2:  My dog name is Dollar
String 3:  I like to play Ludo

Result 1:  [Welcome,  to the, online portal, of GeeksforGeeks]
Result 2:  [M y   dog name is Dollar]
Result 3:  [I like to play Ludo]
Result 4:  [] 

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *