我有一个网址,我试图从中删除evreything并只获取其中的数字...它看起来像这样:www.url.com/blalb/5435/blabla
网址一直不同,所以除了数字之外我还需要爆炸其他所有内容。 它必须与PHP。
答案 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";
}
如果要匹配字符串中的特定数字组(除第一个之外),则需要更复杂的正则表达式。