Ruby有着强大的字符串处理能力。
Ruby从一开始就利用其面向对象的编程方式使其拥有了丰富的字符串运算,并且也拥有整合了语言处理功能的正则表达式。
字符串的创建
字符串也是一种对象,和其他一般的对象一样,能够使用new方法来创建。
例1
str = String.new
str << 72 << 101 << 108 << 108 << 111
p str
#输出结果
#"hello"
公式的展开
在双引号里的字符串中可以进行公式的展开。在单引号表示的字符串中则不行。
公式的展开是指在字符串中括在#{...}中的部分会被作为Ruby的公式来解释。
例2
a = 2
puts "The value of a is #{a}"
puts "The value of a to the fifth power is #{a**5}"
#输出结果
#The value of a is 2
#The value of a to the fifth power is 32
字符串化方法
to_s可以将对象转化为人们可以阅读的字符串形式。
例3
p 1.to_s
p true.to_s
#输出空字符串
p nil.to_s
p "strings".to_s
#输出结果
#"1"
#"true"
#""
#"strings"
反引号字符串
字符串若用反引号引用,其中内容会作为shell命令被执行。
字符串的操作
连接、重复
在Ruby中有*运算符,能将字符串以指定的次数重复后返回。
p "Look! "*3
p "Please " + "Look "*3 + "!"
#输出结果
#"Look! Look! Look! "
#"Please Look Look Look !"