从 JavaScript 字符串中获取数字

17 Mar 2025 | 4 分钟阅读

在本篇文章中,我们将了解如何使用 JavaScript 从字符串中提取数字。

我们只能获取提供字符串中存在的数字。有多种方法可以从字符串中获取数字,如下所示:

  • 使用正则表达式的 JavaScript match 方法
  • 使用展开运算符的 JavaScript reduce() 方法
  • 使用正则表达式的 JavaScript replace() 方法

我们将逐一学习使用 JavaScript 从字符串中获取数字的所有方法。

使用正则表达式的 JavaScript match 方法

我们可以使用 match() 方法从字符串中获取数字。此方法接受 regEx 值作为输入。**regEx** 表示描述字符串模式并允许查找各种文本(如电子邮件 ID、密码等)的正则表达式。它可用于验证目的,例如验证电子邮件文本。

语法

**str.match()** 是上面语法中的方法。**(/(\d+)/)** 是函数值,实际上是我们用来从字符串中获取数字的正则表达式。**\d** 是元字符,用于匹配 0 到 9 的数字。

演示 1

在下面的演示中,我们将从给定的字符串中提取数字。我们将使用 match() 函数来匹配字符串和正则表达式,即 **(/(\d+)/)** 来匹配特定字符串。

代码

输出

这是输出,我们可以在其中看到从字符串中提取的一个数字。

Get a Number from a String using JavaScript

演示 2

我们将获取给定字符串中所有可用的数字。我们将使用 match() 函数来匹配字符串和正则表达式,即 **(/(\d+)/g)** 来匹配特定字符串。RegEx 中的 **g** 用于全局搜索,允许查找字符串中存在的所有数字。

代码

输出

我们可以在下图中看到的每个提取的数字。

Get a Number from a String using JavaScript

使用展开运算符的 JavaScript reduce() 方法

arr.reduce()

arr.reduce() 是一个将数组缩减为一个值的方法。

语法

函数(total, currentValue, currentIndex, arr) 和 initialValue 是 arr.reduce() 函数接受的参数。它们描述如下:

  • **function(total, currentValue, currentIndex, arr):** 这是一个接受 4 个参数的函数,如下所述:
    • **total:** 用于定义先前返回的值或初始值。
    • **currentValue:** 用于定义当前元素的值。
    • **currentIndex:** 此参数是可选的,用于定义当前元素的数组索引。
    • **arr:** 此参数是可选的,用于定义当前元素所属的数组对象。
  • **initialValue:** 此参数是可选的,用于定义传递给 **reduce()** 方法的初始值。

展开运算符

展开运算符 **(…)** 用于将现有数组复制到另一个数组中。它从数组中获取数字。

语法

演示

我们将使用 arr.reduce() 函数和展开运算符从给定的字符串中获取数字。

代码

输出

这是输出,我们可以在其中看到使用 **reduce()** 方法从字符串中提取的数字。

Get a Number from a String using JavaScript

使用正则表达式的 JavaScript replace() 方法

replace() 方法用于将给定字符串的某一部分替换为另一个字符串。请务必记住,原始字符串不会改变。

语法

**replace()** 方法的参数是 **value1** 和 **value2**。**value1** 是 regEx,即要替换的字符串模式,**value2** 是替换给定字符串一部分的字符串值。

演示 1

在此演示中,我们将创建一个 JavaScript 代码,利用 regEx 和 replace() 方法从字符串中提取数字。

代码

输出

在下面的输出中,我们可以看到使用 replace() 方法从字符串中提取的一个数字。

Get a Number from a String using JavaScript

演示 2

在此演示中,我们将创建一个 JavaScript 程序,利用 regEx 和 replace() 函数从提供的字符串中提取小数。

代码

输出

在下面的输出中,我们可以清楚地看到使用 replace() 方法从给定字符串中提取的小数。

Get a Number from a String using JavaScript

结论

我们已经理解了**如何使用 JavaScript 从字符串中获取数字**。我们已经通过演示了解了从字符串中提取数字的方法。获取数字的方法是使用带 regEx 的 JavaScript match 方法,使用带展开运算符的 JavaScript reduce() 方法,以及使用带 regEx 的 JavaScript replace() 方法。