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月3日 02:06
下一篇 2025年5月3日 04:32

相关推荐

  • 2.2Ruby类型之类(Class)

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

    Ruby语言教程 2025年5月2日
    0910
  • 2.1Ruby语言的模块(Module)

    1.模块声明 模块既不是存放 .rb 文件的目录,也不是 .rb 文件。 模块声明是 Module 类的对象。 2.导入模块中的成员 3.访问导入的成员 4.模块直接访问成员

    Ruby语言教程 2025年5月1日
    040
  • 2.6Ruby类型之哈希(Hash)

    哈希的键必须是不可变类型,且不必都是同一个类型,最常用的是符号类型。 哈希的键可以重复,后定义的键值对会覆盖先定义的键值对,会报错。 哈希的值可以是任何 Ruby 数据类型,且不必都是同一个类型。 哈希的值可以重复。 哈希的键值对是无序的,但迭代时是有序的。 哈希的键值对的个数(长度)可以动态改变,可以添加、更改、删除…

    Ruby语言教程 2025年5月6日
    0670

发表回复

登录后才能评论