字符串(Strings)


fn main() {
    name := 'Bob'
    println('Hello, $name!') // 这里可以使用`$`标识符嵌入变量,和swift相似
    println(name.len)
 
    bobby := name + 'by' // `+` 可以进行字符串拼接操作
    println(bobby) // "Bobby"  
    println(bobby[1:3]) // 字符串截取
    var s := 'hello ' // 定义可修改值的string变量
    s += 'world'
    println(s) // "hello world"
} 

在V语言中,字符串是只读的字节数组。 字符串数据使用UTF-8编码。

字符串是不可变的(immutable)。

连接运算符+需要两边都是字符串。 如果age是int,则不编译此代码,如下所示:

println('age = ' + age)

必须先将age转为字符串:

println('age = ' + age.str())

或使用$符号进行字符串插入:

println('age = $age')


如果要定义字符,使用 `

a := `a`
assert 'aloha!'[0] == `a`


如果要定义原始字符串,可以将 r 放在字符串前面,这样字符串的内容不会被转义:

s := r'hello\nworld'
println(s) // "hello\nworld"