Elixir:
Merkkijonon pituuden selvittäminen
How to:
“Näin teet:”
Elixirisssa stringin pituuden saa selville String.length/1 funktiolla. Helppoa ja yksinkertaista.
string = "Hei maailma!"
pituus = String.length(string)
IO.puts(pituus)Tämän pitäisi tulostaa:
12Toinen esimerkki, jossa on erikoismerkkejä:
string = "Hänellä on 10€"
pituus = String.length(string)
IO.puts(pituus)Tulostaa:
14Huomaa, että special merkit lasketaan yksittäisinä merkkeinä.
Deep Dive
“Sukellus syvemmälle”
Stringien pituuden laskeminen on perushommaa ja osa ohjelmoinnin perusteita – oli kyseessä mikä kieli tahansa. Historiallisesti, monet kielet käyttivät nollalla päättyviä merkkijonoja, mikä asetti omat rajoituksensa. Elixirissä, kuten muissakin moderneissa kielissä, stringit ovat UTF-8-koodattuja, joten String.length/1 ottaa huomioon Unicode-merkit oikein.
Vaihtoehtona, voit käyttää byte_size/1, jos tarvitset tietää montako tavua string vie muistissa, mutta se ei yleensä ole sama kuin merkkien määrä:
string = "Älä huuda!"
IO.puts(byte_size(string)) # Tulostaa tavujen määrän
IO.puts(String.length(string)) # Tulostaa merkkien määränTulostaa:
11
9See Also
“Katso myös”
- Elixirin virallinen String moduuli dokumentaatio
- Unicode standardi
- Elixir School: Oppitunteja Elixirin perusteista, myös merkkijonoista.