2.3Ruby类型之字符串(String)

1.单引号字符串字面量

s = 'hello'

单引号字符串字面量只支持 \\\' 转义序列。

单引号字符串字面量不支持字符串插值。

单引号字符串字面量支持隐式的换行符。

s = 'first line
second line'

puts s
#输出
first line
second line

2.双引号字符串字面量

s = "hello"

双引号字符串字面量支持所有转义序列。

双引号字符串字面量支持字符串插值。

双引号字符串字面量支持隐式的换行符。

s = "first line
second line"

puts s
#输出
first line
second line

3.访问字符串

#正数索引从左往右从0开始,负数索引从右往左从-1开始。

#查看
v = s[索引]

#添加或更改
a[索引] = 元素

#删除
a[索引] = ""

4.字符串长度

注意:length 是只读属性。

v = s.length

5.字符串连接

可以使用加号 + 连接字符串。

a = "Hello"
b = " World!"

c = a + b
puts c  # Hello World!

6.字符串插值

#{$全局变量名}#{@@类变量名}#{@实例变量名} 可以简写为 #$全局变量名#$类变量名#$实例变量名

#{表达式}
a = "Hello"
b = " World!"

c = "#{a}#{b}"
puts c  # Hello World!

7.转义序列

转义序列描述
\忽略反斜杠与换行符
\\反斜杠(\)
\'单引号(')
\"双引号(")
\#井号
\a响铃
\b退格
\eESC
\f换页
\n换行
\r回车
\s空格
\t水平制表
\v垂直制表
\nnn由 3 个八进制数字 nnn (000~377) 表示的字符。
\nn等同于 \0nn。由 2 个八进制数字 nn (00~77) 表示的字符。
\n等同于 \00n。由 1 个八进制数字 n (0~7) 表示的字符。
\xnn由 2 个十六进制数字 nn (00~FF00~ff) 表示的字符。
\xn等同于 \x0n。由 1 个十六进制数字 n (0~F0~f) 表示的字符。
\unnnn由 4 个十六进制数字 nnnn (0000~FFFF0000~ffff) 表示的字符。
\u{n~nnnnnn}由 1 到 6 个十六进制数字 n~nnnnnn (0~10FFFF0~10ffff) 表示的字符。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/ruby/rubylang/37406.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2025年5月2日 19:44
下一篇 2025年5月3日 04:32

相关推荐

  • 2.4Ruby类型之符号(Symbol)

    1.符号声明 注意:符号不是轻量的字符串。

    Ruby语言教程 2025年5月4日
    0190
  • 1.7Ruby语言的方法(Method)

    1.方法定义 1.1方法声明 方法声明不是对象,更不是 Method 类的对象。 注意:在没有歧义的情况下,形参外围的圆括号 () 可以被省略。 1.2块 块不是对象,更不是 Proc 类的对象。 注意:块必须与方法调用表达式关联使用,不可以单独使用。 注意:一般情况下,单行使用花括号 {} 方式,多行使用 do/en…

    Ruby语言教程 2025年3月7日
    0160
  • 2.2Ruby类型之类(Class)

    1.类声明 类声明是 Class 类的对象。 2.成员定义 注意:Ruby 语言不支持类访问器属性。 3.继承 3.1方法继承 一个子类只可以直接继承自一个父类,不可以直接继承自多个父类。 子类会直接继承父类中可继承的方法,间接继承祖父类中可继承的方法,以此类推,直至没有可继承的方法。 注意:从父类中继承过来的方法无需…

    Ruby语言教程 2025年5月2日
    0230

发表回复

登录后才能评论