Apakah kegunaan kaedah split dalam bahasa go

青灯夜游
Lepaskan: 2023-01-28 13:37:35
asal
2714 orang telah melayarinya

Dalam bahasa Go, kaedah Split() digunakan untuk membelah rentetan Anda boleh menggunakan pembatas untuk membahagikan rentetan kepada senarai subrentetan dan subrentetan dikembalikan dalam bentuk kepingan. Split() ialah kaedah pakej rentetan Anda perlu mengimport pakej rentetan sebelum menggunakannya.

Apakah kegunaan kaedah split dalam bahasa go

Persekitaran pengendalian tutorial ini: sistem Windows 7, GO versi 1.18, komputer Dell G3.

kaedah pemisahan bahasa go

Dalam Go, fungsi Split() (yang terkandung dalam pakej rentetan) menggunakan pembatas untuk membahagikan rentetan kepada senarai subrentetan. Subrentetan dikembalikan sebagai kepingan.

Sintaks

Perlu mengimport pakej rentetan

strings.Split(s, sep)
Salin selepas log masuk
td>
ParameterPeneranganCatatan
sRentetan untuk dipisahkanRentetan untuk dipisahkanParameter jenis rentetan
sepPemisah
参数说明备注
s待分割的字符串字符串类型的参数
sep分隔符

字符串类型的参数

Parameter jenis rentetan

Nilai Pulangan

Mengembalikan hirisan rentetan.

Contoh penggunaan

Fungsi Split() membahagi rentetan mengikut pembatas. Selepas memotong, hirisan rentetan dikembalikan Nilai len dan topi hirisan adalah sama dengan bilangan pembatas yang terdapat dalam rentetan asal + 1 (hanya benar jika s bukan rentetan kosong).
package main

import (
	"fmt"
	"strings"
)

func main() {
	demo := "I&love&Go,&and&I&also&love&Python."
	string_slice := strings.Split(demo, "&")

	fmt.Println("result:",string_slice)
	fmt.Println("len:",len(string_slice))
	fmt.Println("cap:", cap(string_slice))
}
Salin selepas log masuk

Keputusan larian adalah seperti berikut:
result: [I love Go, and I also love Python.]
len: 8
cap: 8
Salin selepas log masuk

Nota

1 tidak wujud dalam Apabila

dalam rentetan asal, apabila pemisah tidak wujud dalam rentetan asal, fungsi Split() hanya menukar rentetan asal kepada nilai len dan had 1 Potongan rentetan.
package main

import (
	"fmt"
	"strings"
)

func main() {
	demo := "I love Go, and I also love Python."
	string_slice := strings.Split(demo, "&")

	fmt.Println("result:",string_slice)
	fmt.Println("len:",len(string_slice))
	fmt.Println("cap:", cap(string_slice))
}
Salin selepas log masuk

Hasil larian adalah seperti berikut:
result: [I love Go, and I also love Python.]
len: 1
cap: 1
Salin selepas log masuk

2 Apabila pembatas ialah rentetan kosong

Apabila pembatas ialah rentetan kosong, fungsi Split() membahagikan setiap aksara dalam rentetan kepada elemen yang berasingan.
package main

import (
	"fmt"
	"strings"
)

func main() {
	demo := "Go"
	string_slice := strings.Split(demo, "")

	fmt.Println("result:",string_slice)
	fmt.Println("len:",len(string_slice))
	fmt.Println("cap:", cap(string_slice))
}
Salin selepas log masuk

Hasil berjalan:
result: [G o]
len: 2
cap: 2
Salin selepas log masuk

3 Parameter semuanya rentetan kosong

Apabila Split(. Apabila kedua-dua parameter fungsi ) ialah rentetan kosong (iaitu, s dan sep adalah rentetan kosong), fungsi Split() mengembalikan hirisan rentetan kosong dengan nilai len dan cap ​​​​0.
package main

import (
	"fmt"
	"strings"
)

func main() {
	demo := ""
	string_slice := strings.Split(demo, "")

	fmt.Println("result:",string_slice)
	fmt.Println("len:",len(string_slice))
	fmt.Println("cap:", cap(string_slice))
}
Salin selepas log masuk

Hasil jalankan:
result: []
len: 0
cap: 0
Salin selepas log masuk

4 Apabila s ialah rentetan kosong dan sep bukan rentetan kosong

Berbeza daripada senario sebelumnya, dalam kes ini walaupun hasilnya masih berupa hirisan rentetan, nilai len dan topi hirisan rentetan ialah 1 (bukannya 0 seperti dalam senario sebelumnya) . Hasil yang dikembalikan ialah kepingan rentetan yang mengandungi rentetan kosong.
package main

import (
	"fmt"
	"strings"
)

func main() {
	demo := ""
	string_slice := strings.Split(demo, "*")

	fmt.Println("result:",string_slice)
	fmt.Println("len:",len(string_slice))
	fmt.Println("cap:", cap(string_slice))

	element := string_slice[0]
	fmt.Printf("string_slice[0]:%s, type:%T, len():%d\n",
		element, element, len(element),)

	fmt.Println("element == \"\"?", element == "")
}
Salin selepas log masuk

Hasil larian:
result: []
len: 1
cap: 1
string_slice[0]:, type:string, len():0
element == ""? true
Salin selepas log masuk

5 Potongan rentetan yang dikembalikan tidak lagi mengandungi pembatas

[Cadangan berkaitan: Pergi tutorial video, Pengajaran pengaturcaraan

]

Atas ialah kandungan terperinci Apakah kegunaan kaedah split dalam bahasa go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan