English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在Go语言中,字符串不同于Java,C ++,Python等其他语言。它是一系列宽度可变的字符,其中每个字符都使用UTF-8编码由一个或多个字节表示。在Go字符串中,可以使用以下函数将字符串拆分为一个切片。这些函数是在字符串包下定义的,因此,您必须在程序中导入字符串包才能访问这些函数:
1.Split:此函数将字符串拆分为由给定分隔符分隔的所有子字符串,并返回包含这些子字符串的切片。
Sintaxis:
func Split(str, sep string) []string
在这里,str是字符串,sep是分隔符。 如果str不包含给定的sep且sep为非空,则它将返回长度为1的切片,其中仅包含str。 或者,如果sep为空,则它将在每个UTF-8序列之后拆分。 或者,如果str和sep均为空,则它将返回一个空切片。
package main import ( "fmt" "strings" ) func main() { //Crear e inicializar la cadena str1 := "Welcome, to the, online portal, of w"3codebox" str2 := "My dog name is Dollar" str3 := "I like to play Ludo" //Mostrar cadena fmt.Println("Cadena" 1: "str"1) fmt.Println("Cadena" 2: "str"2) fmt.Println("Cadena" 3: "str"3) //Dividir la cadena dada //使用Split()函数 res1 := strings.Split(str1, ",") res2 := strings.Split(str2, "") res3 := strings.Split(str3, "!") res4 := strings.Split("", "w3codebox, geeks") // Mostrar resultado fmt.Println("\nResult 1: "res"1) fmt.Println("Result 2: "res"2) fmt.Println("Result 3: "res"3) fmt.Println("Result 4: "res"4) }
Salida:
String 1: Bienvenido, al portal en línea de w3codebox String 2: Mi perro se llama Dollar String 3: Me gustaría jugar a Ludo Resultado 1: [Bienvenido al portal en línea de w3codebox] Resultado 2: [M i g u e r d o g n a m e i s D o l l a r] Resultado 3: [Me gustaría jugar a Ludo] Resultado 4: []
2. SplitAfter:Esta función divide la cadena dada en todas las subcadenas después de cada instancia del separador y devuelve un slice que contiene estas subcadenas.
Sintaxis:
func SplitAfter(str, sep string) []string
在这里,str是字符串,sep是分隔符。 如果str不包含给定的sep且sep为非空,则它将返回长度为1的切片,其中仅包含str。 或者,如果sep为空,则它将在每个UTF-8序列之后拆分。 或者,如果str和sep均为空,则它将返回一个空切片。
package main import ( "fmt" "strings" ) func main() { //Crear e inicializar la cadena str1 := "Welcome, to the, online portal, of w"3codebox" str2 := "My dog name is Dollar" str3 := "I like to play Ludo" //Mostrar cadena fmt.Println("Cadena" 1: "str"1) fmt.Println("Cadena" 2: "str"2) fmt.Println("Cadena" 3: "str"3) //Dividir la cadena dada //使用SplitAfter()函数 res1 := strings.SplitAfter(str1, ",") res2 := strings.SplitAfter(str2, "") res3 := strings.SplitAfter(str3, "!") res4 := strings.SplitAfter("", "w3codebox, geeks") //Mostrar resultado fmt.Println("\nResult 1: "res"1) fmt.Println("Result 2: "res"2) fmt.Println("Result 3: "res"3) fmt.Println("Result 4: "res"4) }
Salida:
String 1: Bienvenido, al portal en línea de w3codebox String 2: Mi perro se llama Dollar String 3: Me gustaría jugar a Ludo Resultado 1: [Bienvenido, a l a p o r t a l e n l í n e , d e w]3codebox] Resultado 2: [M i g u e r d o g n a m e i s D o l l a r] Resultado 3: [Me gustaría jugar a Ludo]
3. SplitAfterN:Esta función divide la cadena dada en todas las subcadenas después de cada instancia del separador y devuelve un slice que contiene estas subcadenas.
Sintaxis:
func SplitAfterN(str string, sep string, m int) []string
aquí,stres una cadena,sepes el separador, m se usa para encontrar el número de subcadenas que se devolverán. Aquí, sim > 0entonces devolverá como máximomsubcadenas y la última subcadena no se dividirá.m == 0entonces devolverá nil. Sim < 0si m < 0, entonces devolverá todas las subcadenas.
package main import ( "fmt" "strings" ) func main() { //Crear e inicializar la cadena str1 := "Welcome, to the, online portal, of w"3codebox" str2 := "My dog name is Dollar" str3 := "I like to play Ludo" //Mostrar cadena fmt.Println("Cadena" 1: "str"1) fmt.Println("Cadena" 2: "str"2) fmt.Println("Cadena" 3: "str"3) //Dividir la cadena dada //Uso de la función SplitAfterN() res1 := strings.SplitAfterN(str1, ",", 2) res2 := strings.SplitAfterN(str2, "", 4) res3 := strings.SplitAfterN(str3, "!", 1) res4 := strings.SplitAfterN("", "w3codebox, geeks 3) //Mostrar resultado fmt.Println("\nResult 1: "res"1) fmt.Println("Result 2: "res"2) fmt.Println("Result 3: "res"3) fmt.Println("Result 4: "res"4) }
Salida:
String 1: Bienvenido, al portal en línea de w3codebox String 2: Mi perro se llama Dollar String 3: Me gustaría jugar a Ludo Resultado 1: [Bienvenido, al portal en línea de w]3codebox] Resultado 2: [Mi perro se llama Dollar] Resultado 3: [Me gustaría jugar a Ludo] Resultado 4: []