我想我的String对象转换为它的1大小的子串(不字符)的枚举的,我怎么能做到这一点有效地在Ruby中?

有帮助吗?

解决方案

"xyzzy".split(//) => ["x", "y", "z", "z", "y"]

其他提示

在红宝石1.9(和1.8.7),可以使用each_char成在字符串中的字符,包括多字节字符和东西的适当处理可靠地迭代。在早期版本中,each_char不存在,索引将返回的字节代码,而不是单个字符的字符串。在这种情况下,可以使用

"abcdefg".split(//u)

,这将在一个UTF-8感知的方式分割字符串。

有一些很好的讨论这里

也许我不明白你的问题,但有一个字符,1个字符的在Ruby中的字符串没有区别。

'hello world'.each_char {|c| puts "substring is #{c}"}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top