繁体   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