String Replacement and Building
Matnni almashtirish va qurish
Matn ichidagi biror qismni boshqasiga almashtirish kerak bo'lsa — strings.Replace/ReplaceAll. Matnni bo'lak-bo'lak yig'ish kerak bo'lsa esa — strings.Builder.
package main
import (
"fmt"
"strings"
)
func main() {
text := "cat sat on the mat"
fmt.Println(strings.ReplaceAll(text, "at", "og"))
var b strings.Builder
b.WriteString("Salom")
b.WriteString(", ")
b.WriteString("dunyo!")
fmt.Println(b.String())
}ReplaceAll matndagi barcha nusxalarini almashtiradi (Replace(s, old, new, n) esa faqat birinchi n tasini). strings.Builder — matnni bo'lak-bo'lak yig'ish uchun samarali qurilma: xuddi Lego bloklarini bittalab qo'shib katta qasr qurgandek, oddiy + bilan matn qo'shishdan ancha tezroq ishlaydi, ayniqsa ko'p marta qo'shilganda.
>_ Exercise
strings.Builder yordamida bo'lakchalarni birlashtiring, so'ng birinchi almashtirishni bajaring.
- •strings.Builder yordamida parts'ni "-" bilan birlashtirib bitta matn hosil qiling
- •natijani chop eting
- •natijadagi birinchi "-" ni "_" ga almashtirib yana bir marta chop eting (strings.Replace, n=1)
Stuck? Reveal a hint to help you.
Key Takeaway
Key Takeaway:
Ko'p marta matn qo'shish kerak bo'lganda strings.Builder ishlating — u + bilan qo'shishdan tezroq. Almashtirish uchun Replace (chegaralangan) yoki ReplaceAll (hammasi) ishlating.
NEXT UP
Type Conversions with strconv
$ go run main.go
Kodingizni ishga tushiring