📜  红宝石 |字符串代码点方法(1)

📅  最后修改于: 2023-12-03 15:41:12.311000             🧑  作者: Mango

红宝石 | 字符串代码点方法

在Ruby中,每个字符都有一个与之对应的整数代码点(Unicode值),也就是每个字符的唯一标识。字符串代码点是指字符串中每个字符的代码点的集合。在Ruby中,我们可以使用String#codepoints方法来获取一个字符串的所有代码点。

下面是一个示例:

str = "hello, world"
codepoints = str.codepoints

puts codepoints
# 输出:104 101 108 108 111 44 32 119 111 114 108 100

这个示例中,我们定义了一个字符串str,然后调用了codepoints方法得到字符串的所有代码点。最后我们将代码点以空格分割的形式输出到控制台上。

注意,codepoints方法返回的是一个枚举器对象,我们可以使用to_a方法将其转换为一个数组。

str = "hello, world"
codepoints = str.codepoints.to_a

puts codepoints
# 输出:[104, 101, 108, 108, 111, 44, 32, 119, 111, 114, 108, 100]

此外,我们还可以使用String#ord方法来获取一个字符串中某个字符的代码点。

下面是一个示例:

str = "hello"
codepoint = str[0].ord

puts codepoint
# 输出:104

这个示例中,我们定义了一个字符串str,然后使用[]运算符获取字符串的第一个字符,再使用ord方法获取这个字符的代码点。

总结一下,字符串代码点是指字符串中每个字符的代码点的集合。在Ruby中,我们可以使用String#codepoints方法来获取一个字符串的所有代码点,也可以使用String#ord方法来获取字符串中某个字符的代码点。