Sobes.tech
Junior — Middle

Ինչպե՞ս կարելի է հերթականորեն անցնել տողի նիշերի միջոցով կոդում:

sobes.tech AI

Պատասխան AI-ից

Go-ում, հաջորդական կերպով անցնելու համար տողում (runes), օգտագործվում է for range ցիկլը: Սա կարևոր է, քանի որ Go-ում տողը բայթների հաջորդականություն է, իսկ Unicode նիշերը կարող են զբաղեցնել մի քանի բայթ:

Օրինակ՝

s := "Привет"
for i, r := range s {
    fmt.Printf("Նիշ %c սկսվում է բայթ %d-ից\n", r, i)
}

Այստեղ, r է ռունա (Unicode նիշ), իսկ i բայթի ինդեքսն է, որտեղից սկսվում է այդ նիշը տողում:

Այս մոտեցումը թույլ է տալիս ճիշտ մշակել բազմալեզու տողերը և այն նիշերը, որոնք զբաղեցնում են ավելի քան մեկ բայթ։