Php 使用正则表达式从文本中提取数字

Php 使用正则表达式从文本中提取数字,php,pcre,Php,Pcre,我正试图用PHP从本文中提取1和125: preg_match("/^(?P<digit>\d+)/", "1 Foo ($125)",$m) preg_match(“/^(?P\d+/”,“一个Foo($125)”,$m) 你能帮忙吗 谢谢试试这个: <?php preg_match_all('/\d+/', '1 Foo ($125) bar', $matches); var_dump($matches); ?> 请注意,我使用了preg_match_all

我正试图用PHP从本文中提取
1
125

preg_match("/^(?P<digit>\d+)/", "1 Foo ($125)",$m)
preg_match(“/^(?P\d+/”,“一个Foo($125)”,$m)
你能帮忙吗

谢谢

试试这个:

<?php
preg_match_all('/\d+/', '1 Foo ($125) bar', $matches);
var_dump($matches);
?>

请注意,我使用了preg_match_all,它会返回模式中的所有匹配项。

尝试以下方法:

<?php
preg_match_all('/\d+/', '1 Foo ($125) bar', $matches);
var_dump($matches);
?>


请注意,我使用了preg_match_all,它会返回模式中的所有匹配项。

您实际上是只想匹配一个字符串(不太可能),还是要匹配一个模式(几乎是对regexp的要求)。如果是后者,那是什么模式?我需要从单个字符串“1foo($125)”中提取,就像这样,这就是它可以改变的所有内容,比如“2foo($250)”,所以这里我需要得到2和250作为两个变量,你真的只想匹配一个字符串(不太可能)还是匹配一个模式(这几乎是对regexp的一个要求)。如果是后者,那是什么模式?我需要从单个字符串“1foo($125)”中提取,就像这样,这就是它可以改变的所有内容,比如“2foo($250)”,所以这里我需要得到2和250作为两个变量