Strings
In V one can define strings using the :=
operator. Strings (like other variables) are immutable by default. One is free to use ""
or ''
to denote a string. When using vfmt
all double-quoted strings will be converted to single-quoted ones unless it contains a single quote character.
Getting the length of a string works with .len
.
Interpolation
It is possible to do string interpolation with $
in front of the variable:
One can have more complex expressions with interpolation syntax by using ${}
:
Concatenation
Strings can be concatenated with the +
operator.
Appending to a string works with concatenation as well as with +=
operator. Since strings are immutable by default it is only possible to do this if they are declared with mut
.
In V, string data is encoded using UTF-8 and the string itself is a read-only array of bytes. This makes slicing possible, which means we can access single-character literals or slices of a string variable.
Notes
When using some_string[start..end]
syntax the end
is not inclusive.
All operators in V must have values of the same type on both sides. The code below will not compile because age
is an int
:
We therefore need to convert it to string by using .str()
or use string interpolation (preferred):
To define character literals use: ``
. Raw strings can be defined as prepending r
. They are not escaped.
Last updated