Hitta längden på en sträng

Swift:
Hitta längden på en sträng

Hur gör man:

För att få längden på en sträng i Swift är det bara att använda count-egenskapen:

let greetings = "Hej!"
let length = greetings.count
print(length) // 4

Enkel som en plätt. Observera att Swift räknar karaktärer på ett sätt som tar hänsyn till tecken som kan vara sammansatta, såsom emoji eller accenter:

let flag = "🇸🇪"
print(flag.count) // 1

Djupdykning

Från då och då har behandlingen av stränglängder ändrats i programmeringsspråk. I vissa tidiga språk, kunde man ta fram längden genom att räkna tills man stötte på en speciell ’null’-karaktär. Swift, och moderna språk, hanterar strängar på ett säkrare och mer internationellt sätt genom att använda Unicode-skalära värden, vilket gör count mer tillförlitlig över olika språk och tecken.

Ett alternativ till count är att arbeta med utf16.count eller utf8.count, vilket kan vara relevant om du behöver den specifika längden i UTF-16 eller UTF-8 kodning för till exempel nätverksöverföring eller lagring.

Så här fungerar det under huven: Swifts String är en samling av Character värden, där varje Character kan representera flera Unicode-skalära värden. Det innebär att Swift tar hänsyn till grafemkluster — grupper av en eller flera skalära värden som tillsammans representerar ett enda mänskligt läsbart tecken.

Se även