正则表达式 (preg_match_all)
这是我的代码:
<?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>';
}
?>
它不起作用。 我想排除链接(带有 ID)之前或之后有空格的每个匹配项。 我为此使用了 \S
。
例如,如果:
$matchWith = " http://videosite.com/ID123 ";
它不应该显示任何内容。
谢谢。
This is my code:
<?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>';
}
?>
It's not working.
I want to exclude every match that has a whitespace before or after the Link (with the ID).
I used \S
for this.
For example if:
$matchWith = " http://videosite.com/ID123 ";
it should not display anything.
Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您放错了正则表达式中的前导斜杠。
尝试使用以下内容:
You are misplacing the leading slash in the regex.
Try to use the following:
您缺少起始分隔符和转义符:
You are missing starting delimiter and an escape: