Ruby:如何检索字符串的一部分?

时间:2011-05-26 09:21:39

标签: ruby string

我想要一种方法只显示字符串/文本值中的一定数量的字符。

我希望它以my_string.length > 40的方式工作,然后才能从my_string获得前40个字符?

5 个答案:

答案 0 :(得分:21)

简单地将字符串子串:

mystring[0...40]

答案 1 :(得分:4)

你可以这样做:

my_string[0..39]

答案 2 :(得分:1)

Ruby允许您对字符串进行切片:

my_string = my_string[0, 40] if (my_string.length > 40)

正如Andy H提醒我的那样,这可以缩短为:

my_string = my_string[0, 40]

以下是一个例子:

str = '1234567890' * 5 #=> "12345678901234567890123456789012345678901234567890"
str[0, 40] #=> "1234567890123456789012345678901234567890"

答案 3 :(得分:1)

my_string.slice!(40..-1)

您可以查看切片的说明! here

答案 4 :(得分:1)

如果您已经在使用activesupport gem(或者如果您不介意将其添加为依赖项),那么您也可以使用String#truncate。如果您的字符串超过设定的限制,您将看到“您的字符串...”