如何使用 ruby​​ 正则表达式查找完整的数字

Ale*_*off 0 ruby regex

我正在寻找字符串中数字第一次完整出现的位置。我不是在寻找第一个数字,而是整个第一个数字。例如,w134fklj342中的第一个数字是 134,而1235alkj9342klja9034中的第一个数字是 1235。

我尝试使用 \d 但我不确定如何将其扩展为包含多个数字(不指定数字的长度)。

Ser*_*sev 5

我想,你正在寻找这个正则表达式

\d+
Run Code Online (Sandbox Code Playgroud)

“加”的意思是“一个或多个”。该正则表达式将匹配字符串中的所有数字,因此选择第一个。

strings = ['w134fklj342', '1235alkj9342klja9034']

strings.each do |s|
  puts s[/\d+/]
end
# >> 134
# >> 1235
Run Code Online (Sandbox Code Playgroud)

演示: http: //rubular.com/r/YE8kPE2SyW