使用PHP爆炸除数字之外的每个字符

时间:2013-05-22 18:10:19

标签: php numbers explode

我有一个网址,我试图从中删除evreything并只获取其中的数字...它看起来像这样:www.url.com/blalb/5435/blabla

网址一直不同,所以除了数字之外我还需要爆炸其他所有内容。 它必须与PHP。

1 个答案:

答案 0 :(得分:0)

试试这个:

$url;                  #this contains your url string
$matches = array();    #this will contain the matched numbers

if(preg_match_all('/\d+/', $url, $matches)) {
    $numbers = implode('', $matches[0]);
    echo "numbers in string: $numbers";
}

这使用带有preg_match_all的正则表达式来匹配字符串中的所有数字组,将每个组放入$matches[0]数组。然后,您可以将implode这个数字组数组简单地转换为字符串。

例如,如果$url包含'www.url.com/blalb/5435/blabla/0913',则输出为numbers in string: 54350913

如果您只想匹配网址中的第一个数字组,请使用preg_match代替preg_match_all

if(preg_match('/\d+/', $url, $matches)) {
    $numbers = implode('', $matches);
    echo "numbers in string: $numbers";
}

如果要匹配字符串中的特定数字组(除第一个之外),则需要更复杂的正则表达式。