我有以下网址:http:example.com/country/France/45
。
使用模式http:example.com/country/name/**NUMBER**(?$_GET possibly)
。
如何使用正则表达式(或其他正则表达式)提取数字?
答案 0 :(得分:3)
使用正则表达式:
$str = 'http:example.com/country/France/45';
preg_match('/http:example\.com\/country\/(?P<name>\w+)\/(?P<id>\d+)/', $str, $matches);
print_r($matches); // return array("name"=>"France", "id" => 45);
答案 1 :(得分:2)
$url = 'http:example.com/country/France/45';
$id = end(explode('/',trim($url,'/')));
简单不是吗?
trim ()
的用法是删除尾随\
答案 2 :(得分:1)
使用类似的东西
$url = "http://example.com/country/France/45";
$parts = explode('/', $url);
$number = $parts[count($parts) - 1];
如果你最后有GET变量,你可以像这样进一步爆炸
$number = explode('?', $number);
$number = $number[0];
希望这有助于:)
答案 3 :(得分:1)
echo $last = substr(strrchr($url, "/"), 1 );
strrchr()
会在/
字符的最后一次出现,然后substr()
会在其后面给出字符串。
答案 4 :(得分:-2)
使用explode()
:
$parts = explode('/', $url);
$number = $parts[count($parts)-1];
答案 5 :(得分:-2)
php
的get命令为$_GET
,因此要显示为数字
<html>
<body>
<?php
echo $_GET["eg"];
?>
</body>
</html>
网址为http:example.com/country/name/?eg=**NUMBER**