编程语言
首页 > 编程语言> > php – 正则表达式(preg_match)

php – 正则表达式(preg_match)

作者:互联网

这是不工作的代码:

<?php
$matchWith = "  http://videosite.com/ID123 ";
preg_match_all('/\S\/videosite\.com\/(\w+)\S/i', $matchWith, $matches);  
foreach($matches[1] as $value)
{  
    print '<a href="http://videosite.com/'.$value.'">Hyperlink</a>';        
}  
?>

我想要的是,如果它之前或之后有空格,它不应该显示链接.
所以现在它什么都不显示.但它仍然显示链接.

解决方法:

这也可以匹配ID12,因为3不是空格,而http:/不是空格.你可以试试:

preg_match_all('/^\S*\/videosite\.com\/(\w+)\S*$/i', $matchWith, $matches);

标签:preg-match-all,php,regex,preg-match
来源: https://codeday.me/bug/20190902/1793011.html