[英]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.