如何使用to_i获取Ruby字符串中的第二个整数?

时间:2009-06-29 20:21:10

标签: ruby parsing

我需要转换一些字符串,并拉出两个第一个整数,例如:

  

unkowntext60moreunknowntext25something

要:

@width = 60
@height = 25

如果我string.to_i,我得到第一个整数:,60。我无法弄清楚我是如何得到第二个整数,25。任何想法?

3 个答案:

答案 0 :(得分:12)

如下:

text = "unkowntext60moreunknowntext25something"
@width, @height = text.scan(/\d+/).map { |n| n.to_i }  #=> 60, 25

答案 1 :(得分:4)

@width, @height = "unkowntext60moreunknowntext25something".scan(/[0-9]+/)

答案 2 :(得分:2)

您可以使用像(\d+)这样的正则表达式捕获字符串中的所有数字,然后迭代捕获组,将每个数字转换为整数。

编辑:我不认识Ruby,所以我维基这个答案,希望Rubyist能够充实代码示例。