Cara menggunakan ungkapan biasa untuk memadankan kejadian berturut-turut bagi huruf yang sama dalam bahasa Go
Ekspresi biasa ialah alat padanan corak teks yang berkuasa dan terdapat juga sokongan ungkapan biasa yang kaya dalam bahasa Go. Kita boleh menggunakan ungkapan biasa untuk memadankan kejadian berturut-turut bagi huruf yang sama untuk mencari dan memproses beberapa corak aksara tertentu.
Di bawah kami akan menggunakan contoh khusus untuk memperkenalkan cara menggunakan ungkapan biasa untuk memadankan kejadian berturut-turut bagi huruf yang sama dalam bahasa Go.
package main import ( "fmt" "regexp" ) func main() { str := "aaabbccdd" pattern := `(.)+` re := regexp.MustCompile(pattern) matches := re.FindAllString(str, -1) if len(matches) > 0 { fmt.Println("连续出现的相同字母:") for _, match := range matches { fmt.Println(match) } } else { fmt.Println("没有连续出现的相同字母") } }
Dalam kod di atas, kami mula-mula mentakrifkan str rentetan, yang mengandungi satu siri huruf yang sama berturut-turut. Seterusnya, kami mentakrifkan corak ungkapan biasa, dengan (.) +
bermaksud memadankan mana-mana aksara, diikuti dengan sekurang-kurangnya satu ulangan berturut-turut bagi aksara yang sama. (.)+
表示匹配一个任意字符,后面跟着至少一个连续重复的相同字符。
然后,我们使用regexp.MustCompile(pattern)
来编译正则表达式模式,并通过FindAllString
regexp.MustCompile(pattern)
untuk menyusun corak ungkapan biasa dan mencari semua subrentetan dalam str rentetan yang sepadan dengan corak melalui kaedah FindAllString
. Akhir sekali, kami mengulang dan mencetak semua subrentetan berturut-turut bagi huruf yang sama yang memenuhi kriteria. Jalankan kod di atas, kita akan mendapat output berikut: 连续出现的相同字母: aaa bb dd
Atas ialah kandungan terperinci Cara memadankan kejadian berturut-turut bagi huruf yang sama menggunakan ungkapan biasa dalam bahasa Go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!