De lengte van een string vinden

Ruby:
De lengte van een string vinden

Hoe te:

Ruby houdt het simpel met de .length methode:

begroeting = "Hallo, wereld!"
puts begroeting.length

Uitvoer:

13

Of gebruik .size, wat hetzelfde doet:

begroeting = "Hallo, wereld!"
puts begroeting.size

Uitvoer:

13

Diepere 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.count

Uitvoer:

13
13

Zie Ook