You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby入门者求助:如何快速从字符串中提取前两个数字?

提取字符串中的指定数字

针对字符串 5.16.0.0-15,给你两种适合入门的简单方法:

方法一:分割字符串

利用 split 方法按分隔符拆分字符串,再直接取对应位置的元素:

str = "5.16.0.0-15"
parts = str.split(/[.-]/) # 按点或横杠分割,得到数组 ["5", "16", "0", "0", "15"]
first_num = parts[0].to_i # 转成整数 5
second_num = parts[1].to_i # 转成整数 16

如果不需要转成整数,直接取 parts[0] 和 parts[1] 即可。

方法二:正则表达式匹配

用正则捕获组直接提取目标数字:

str = "5.16.0.0-15"
match_result = str.match(/^(\d+)\.(\d+)/)
first_num = match_result[1].to_i # 5
second_num = match_result[2].to_i # 16

这个正则的逻辑是:从字符串开头匹配第一个连续数字组((\d+)),接着匹配一个点,再匹配第二个连续数字组,最后提取这两个捕获组的内容。

内容的提问来源于stack exchange,提问作者m7xtuf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:31:41