簡體   English   中英

PHP - 正則表達式(preg_match)

[英]PHP - regular expression (preg_match)

<?php
$string = "http://example.com/file/D1 http://example.com/file/D2
http://example.com/file/D3";
preg_match_all('/(https?\:\/\/)?(www\.)?example\.com\/file\/(\w+)/i', $string, $matches);  
foreach($matches[3] as $value)
{  
print $value;  
}
?>

我想preg匹配第三個鏈接並獲得“D3”。
我不希望它與其他兩個鏈接匹配。 這就是它應該檢查鏈接在開頭或結尾是否有空格的原因。
我知道要與空格匹配,表達式是\\s 我嘗試但不知怎的,我沒有得到它。 :(

您可以像這樣添加$以匹配字符串的結尾,並且它只返回最后一個。

preg_match_all('/(https?\:\/\/)?(www\.)?example\.com\/file\/(\w+)$/i', $string, $matches);  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM