使用 Javascript 从字符串中提取数字
Extracting a number from a string using Javascript
我相信有人提出了非常相似的问题,但是,所提供的 answers/examples 并不真正适用于我的问题。好吧,至少在我的知识范围内 - 我不是 Javascript 鉴赏家,所以请原谅我。
使用 Google 家用设备,我让用户说出他想吃早餐的时间。他可以在几分钟内回答,并保存到变量 the_breakfast_minutes 中。然后我如何使用 JS 从这些字符串中提取数字:
- 20 分钟
- 5 分钟
等等
非常感谢您的帮助!
首先,您可以像这样获取字符串形式的数字:
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+)?/
还将包括负数、小数和指数。
我相信有人提出了非常相似的问题,但是,所提供的 answers/examples 并不真正适用于我的问题。好吧,至少在我的知识范围内 - 我不是 Javascript 鉴赏家,所以请原谅我。
使用 Google 家用设备,我让用户说出他想吃早餐的时间。他可以在几分钟内回答,并保存到变量 the_breakfast_minutes 中。然后我如何使用 JS 从这些字符串中提取数字:
- 20 分钟
- 5 分钟
等等
非常感谢您的帮助!
首先,您可以像这样获取字符串形式的数字:
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+)?/
还将包括负数、小数和指数。