的问题:
我需要确认iframe有一种类型的链接,格式如下:
http://www.example.com/embed/*****11 CHARACTERS MAX.****?rel=0
Starts with: http://www.example.com/embed/
Ends with: ?rel=0
11 CHARACTERS MAX. means in this spot, there can any 11 characters. Don't go beyond 11.
注意:确保每个帖子中都没有指定的标签。这取决于用户如何使用编辑器。
我正在使用PHP
我使用下面这一行来确保除了指定的标签外,所有标签都被排除在外:
$rtxt_offer = preg_replace('#<(?!/?(u|br|iframe)\b)[^>]+>#', '', $rtxt_offer);
答案 0 :(得分:0)
首先,PHP中有内置函数可以为您删除标记:http://php.net/manual/en/function.strip-tags.php这里不需要使用慢速正则表达式。
您需要解决问题的步骤:
iframe
个节点parse_url
快乐编码
答案 1 :(得分:0)
您写道,您只想使用正则表达式验证链接值:
$doesMatch = preg_match('~^http://www.example.com/embed/[^?]{0,11}\?rel=0$~', $link);
这特别符合您的要求。
要删除代码,请参阅strip_tags
或使用HTML解析器执行此操作,这也可以帮助您更准确地获取链接值。
在类似的问题/答案中,我发布了一些示例代码,如何一起使用strip_tags
和SimpleXMLElement
:Extract all the text and img tags from HTML in PHP。