首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >(Ruby)有没有一个函数可以很容易地找到字符串中的第一个数字?

(Ruby)有没有一个函数可以很容易地找到字符串中的第一个数字?
EN

Stack Overflow用户
提问于 2009-10-08 16:30:49
回答 3查看 6.6K关注 0票数 17

例如,如果我输入"ds.35bdg56“,函数将返回35。有没有这样的预制函数,或者我需要遍历字符串,找到第一个数字,看看它有多长,然后返回它?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-10-08 16:41:02

>>  '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"
票数 22
EN

Stack Overflow用户

发布于 2009-10-08 16:43:56

text = "ds.35bdg56"
x = /\d+/.match(text)
puts x #will return 35 (i hope this helps)
票数 6
EN

Stack Overflow用户

发布于 2009-10-08 17:36:21

text[/\d+/].to_i
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1538960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档