使用 Javascript 从字符串中提取数字

Extracting a number from a string using Javascript

我相信有人提出了非常相似的问题,但是,所提供的 answers/examples 并不真正适用于我的问题。好吧,至少在我的知识范围内 - 我不是 Javascript 鉴赏家,所以请原谅我。

使用 Google 家用设备,我让用户说出他想吃早餐的时间。他可以在几分钟内回答,并保存到变量 the_breakfast_minutes 中。然后我如何使用 JS 从这些字符串中提取数字:

等等

非常感谢您的帮助!

首先,您可以像这样获取字符串形式的数字:

minutes_string = the_breakfast_minutes.split(" ")[0]

然后,您可以将其转换为数字(如果需要),如下所示:

minutes_number = parseInt(minutes_string)

这是一个带有工作示例的片段:

const the_breakfast_minutes = "20 minutes"
const minutes_string = the_breakfast_minutes.split(" ")[0]
const minutes_number = parseInt(minutes_string)

console.log(minutes_number)

笼统回答问题:可以使用match(regular expression).

const str = "minu20tes"
const number = parseInt(str.match(/\d+/)[0])

假设要提取的数字是正整数。 如果需要,/[\+\-]?\d*\.?\d+(?:[Ee][\+\-]?\d+)?/ 还将包括负数、小数和指数。