📜  php 只获取数字 - PHP (1)

📅  最后修改于: 2023-12-03 15:03:41.578000             🧑  作者: Mango

PHP 只获取数字

在 PHP 中,我们经常需要从文本中提取数字,但是文本中可能包含各种不必要的字符,例如空格、逗号、括号等等。在这种情况下,我们需要一个方法只提取数字。

以下是一种使用正则表达式的方法,可以轻松地提取数字。

$text = "I have 2 apples, 3 oranges and 1 grapefruit.";
preg_match_all('/\d+/', $text, $matches);
$numbers = $matches[0];
print_r($numbers);

在上面的代码中,我们首先定义了一个包含数字和其他字符的文本,然后使用 preg_match_all 函数并在正则表达式中定义 \d+,该表达式匹配一个或多个数字。preg_match_all 函数返回一个数组,其中包含所有匹配表达式的结果。我们只需要访问该数组中的第一个元素 $matches[0],即可获取所有匹配的数字。

在上面的代码中,执行后输出为:

Array
(
    [0] => 2
    [1] => 3
    [2] => 1
)
总结

已经学会了如何使用正则表达式在 PHP 中只获取数字。请注意,该方法并不考虑数字的小数部分或负号。如果您想获取小数或负数,则需要修改正则表达式。