例如,如果我输入“ds.35bdg56”,该函数将返回35.是否有类似的东西的预制函数或我需要迭代字符串,找到第一个数字,看看它有多长然后返回那个?
答案 0 :(得分:21)
>> 'ds.35bdg56'[/\d+/]
=> "35"
或者,因为你确实要求一个功能......
$ irb
>> def f x; x[/\d+/] end
=> nil
>> f 'ds.35bdg56'
=> "35"
你真的可以玩得很开心:
>> class String; def firstNumber; self[/\d+/]; end; end
=> nil
>> 'ds.35bdg56'.firstNumber
=> "35"
答案 1 :(得分:5)
text = "ds.35bdg56"
x = /\d+/.match(text)
puts x #will return 35 (i hope this helps)
答案 2 :(得分:3)
text[/\d+/].to_i