Ruby:
De lengte van een string vinden
Hoe te:
Ruby houdt het simpel met de .length methode:
begroeting = "Hallo, wereld!"
puts begroeting.lengthUitvoer:
13Of gebruik .size, wat hetzelfde doet:
begroeting = "Hallo, wereld!"
puts begroeting.sizeUitvoer:
13Diepere Duik
In Ruby zijn .length en .size uitwisselbaar als het op strings aankomt; ze geven je het aantal karakters. Historisch gezien heeft Ruby zich gericht op het natuurlijker leesbaar maken van de code, wat de reden is waarom je vaak meer dan één manier vindt om hetzelfde te doen.
Intern heeft elk karakter in een string invloed op de opslaggrootte. Het kennen van dit aantal kan dus essentieel zijn voor optimalisatie, vooral met enorme hoeveelheden tekst.
Hoewel .length en .size je het aantal karakters geven, kan in sommige talen en vroegere tijden de lengte van een string verwijzen naar de grootte in bytes. Ruby, met zijn ondersteuning voor multibyte karakters via Unicode, gelijkstelt bytegrootte echter niet direct aan stringlengte vanwege karakters die mogelijk meer dan één byte innemen.
Alternatieven zoals .bytesize vertellen je hoeveel bytes een string inneemt, en .chars.count geeft je het aantal karakters door eerst de string om te zetten in een array van karakters.
Zo zou je .bytesize en .chars.count gebruiken:
begroeting = "Hallo, wereld!"
puts begroeting.bytesize
puts begroeting.chars.countUitvoer:
13
13Zie Ook
- Ruby documentatie over Strings: https://ruby-doc.org/core/String.html
- Een fijne inleiding tot Ruby Strings door RubyGuides: ontdek meer over wat je kunt doen met strings buiten het meten van hun grootte.
- Duik in karaktercodering en hoe het stringoperaties beïnvloedt met dit artikel van Thoughtbot.