使用php从字符串中查找数字

时间:2015-09-29 15:44:11

标签: php regex

我是PHP中正则表达式的新手。

我的问题是我试图从字符串中找到一个数字。我得到了一个地址:伦敦下街25号。

我想只捕捉25这里的街道号码,但也可以是1或2500。

号码始终位于地址的开头,它始终是第一个"字"

4 个答案:

答案 0 :(得分:1)

您可以使用以下内容从字符串的开头抓取数字:

^\d+

https://regex101.com/r/mF1rR6/1

字符串的开头^锚点和\d+在该位置匹配一个或多个数字

这是进入正则表达式的绝佳资源:

http://www.regular-expressions.info/tutorial.html

答案 1 :(得分:1)

由于数字始终位于字符串的开头,因此您可以执行如下所示的简单操作。但是当然如果你想在没有正则表达式的情况下做到这一点。

echo '10 Foo Bar Road' + 0;

答案 2 :(得分:0)

你可以使用@dustmouse提到的正则表达式,或者你可以使用纯PHP,如果数字总是第一个"单词":

$address = '10 Foo Bar Road';
$arr = explode(' ',trim($address));
$number = intval($arr[0]); 

答案 3 :(得分:0)

使用它:

 <?php

 $string = '25 Down Street , London';
 $str =preg_replace("/[^0-9]/","",$string);
 echo $str;
 ?>