Oct
6

如何使用 PHP 从字符串中提取数字

10/06/2023 01:37 AM 经过 Admin Php


在 PHP 中,您可以使用正则表达式和“preg_match_all()”函数从字符串中提取数字。以下是如何从字符串中提取所有数字的示例:

$my_string = "There are 15 Oranges and 3 Bananas.";
preg_match_all('/[0-9]+/', $my_string , $matches);
print_r($matches[0]);

这将输出:

Array ( [0] => 15 [1] => 3 )

解释:

  • 正则表达式“/[0-9]+/”搜索一个或多个连续数字。
  • “preg_match_all()”函数在字符串中搜索所有出现的正则表达式,并将匹配项存储在“$matches”数组中。
  • print_r() 函数用于显示数组的内容。

您还可以使用 preg_replace() 函数从字符串中删除非数字字符并仅保留数字:

$string = "There are 15 Oranges and 3 Bananas.";
$numbers = preg_replace('/D/', '', $string);
echo $numbers;

这将输出:

15 3

解释:

  • 正则表达式“/D/”匹配任何非数字字符。
  • preg_replace() 函数将所有非数字字符替换为空字符串,从而有效地将它们从字符串中删除。

还有另一种方法,但它不像上述两种选择那么可靠。我们可以使用 PHP 内置函数“filter_var()”从字符串中提取 int。

$string = "There are 15 Oranges and 3 Bananas.";
// extract numbers from string
$my_int = (int)filter_var($string ,FILTER_SANITIZE_NUMBER_INT);
echo $my_int;

这将输出:

153

你的想法

搜索
赞助
密码观察
跟着我们
公告

添加了新工具:SVG 缩放尺寸计算器

赞助