回答
(在PHP)我不會用PCRE爲這樣的小事和未曖昧的工作。我只想做:
$parts = explode('/', rtrim($url, '/'));
$partYouWant = array_pop($parts);
編輯
如果你需要使用PCRE(雖然我不知道你爲什麼會)在尤金Ÿ的回答這種變化會做到這一點:
$pattern = '#/([^/]+)\z#';
$url = 'http://example.com/sales/view/id/705';
preg_match($pattern, $url, $matches);
echo $matches[1];
在PHP中,你可以在一個單一的代碼行做到這一點:
$url = 'http://example.com/sales/view/id/705';
substr($url, strrpos($url, '/') + 1);
+1 - 我懷疑這會降低我的解決方案的成本,並且會以相同的方式工作。這可能也需要'rtrim($ url,'/');'儘管我只是把這個放在可能有尾部斜線的URL中,這可能並非如此。 – DaveRandom
@DaveRandom我認爲這也更快。正如你指出的那樣,在字符串結尾處可能無法使用'/',但似乎並不是這樣。無論如何,似乎有人不喜歡我的解決方案,由於-1 :) –
我也有一個 - 但你能做什麼。至少它是downvoter代表downvote成本,而不是解釋。我認爲如果你投了第一個投票並且不對該文章發表評論,你就應該輸掉-5。 – DaveRandom
非PCRE替代:
$url="http://example.com/sales/view/id/705";
$lastPart = current(array_reverse((explode('/',parse_url($url,PHP_URL_PATH)))));
懷疑這是任何更快雖然
這很好,但我需要PCRE ... – NiLL
您可以使用此模式([^\/]*)$
一切從去年/
結束。
也許也很有趣:([^\/\?]*)(\?.*)?$
給你最後/
和第一?
之間的一切最簡單的:
$ok=preg_match('#\d+$#',$url,$m);
if($ok)
echo $m[0],"\n";
聰明:
$ok=preg_match('#/(\d+)$#',$url,$m);
if($ok)
echo $m[1],"\n";
靈活:(因爲它也允許的話,其他比數位)
$ok=preg_match('#/(\w+)$#',$url,$m);
if($ok)
echo $m[1],"\n";
更靈活:(因爲它現在允許的一切,這不是一個/匹配)
$ok=preg_match('#/(.*?)$#',$url,$m);
if($ok)
echo $m[1],"\n";
preg_match('@/([1-9]\d*)/?(?:$|\?)@', $url, $matches);//$matches[1] contains your id
- 1. 如何只獲取一段網址? (PHP)
- 2. JavaScript獲取最後一個網段
- 3. 如何獲取網址的最後一部分AngularJS
- 4. 如何獲取網址的片段?
- 5. 使用Javascript獲取網址的最後部分
- 6. 如何獲取Silverlight應用程序中的最後一個導航網址
- 7. 獲取第一個網址片段
- 8. 如何使用龍捲風來獲取網址中的片段?
- 9. jquery,獲取網址段 - ajax
- 10. 如何使用Facebook洞察API獲取廣告最終網址
- 11. 獲取Zend_Http最終網址
- 12. 如何使用Ruby獲取縮短網址的目標網址?
- 13. 後如何獲得網址「:」
- 14. 如何在Asp.net中獲得最後一個Refrer網址
- 15. 如何獲得一個網址的最後兩節
- 16. 使用JavaScript從當前網址獲取一段文本
- 17. 網址 - 獲取最後一部分在PHP
- 18. JavaScript獲取最後一個網址,無前綴
- 19. 使用Codeigniter獲取網址
- 20. 如何獲得一個網址使用漂亮的網址?
- 21. 如何獲取RTSP網址?
- 22. 從網址獲取第二個網段
- 23. 如何從IP地址獲取最後一位數字?
- 24. 如何使用jQuery獲取最後一個後代元素?
- 25. 獲取最後一個片段顯示
- 26. 如何使用網頁框在網頁中獲取Flash網址?
- 27. 如何使用php獲取最後一個ID使用php
- 28. 如何使用javascript獲取下一個/前進網址?
- 29. 使用awk substr獲取最後一個字段
- 30. 使用PHP PCRE獲取div內容
使用PCRE是我的問題主要單詞。 – NiLL
'$ pattern ='〜http://example.com/sales/view/id/([0-9] +)〜';'你可以擴展一點關於爲什麼你需要pcre解決方案嗎?我不懷疑它的需要..但你的答案可以顯着改變解決方案。 –
我需要添加utm鏈接(分析)爲這個特殊的鏈接我使用preg_match與幾條規則。 – NiLL