首页 > 解决方案 > 正则表达式在视频标签中查找从和直到

问题描述

我有这个视频标签:

<video src="https://videosource.com" x-webkit-airplay="allow"></video>

我像这样使用 PHP Simple HTML DOM Parser:

$html = str_get_html($output);

$output2 = $html->find('video', 0);

preg_match('/\src:"(.*?)\"/', $output2, $match);

但是是返回我的空值。我怎样才能获得https://videosource.com

标签: regexhtml-parsing

解决方案


用正则表达式解析 html 不是一个好主意,但因为你有没有嵌套的视频标签,所以你可以在这里使用它。

您稍微需要更正您的正则表达式并使用它,

src="([^"]*?)"

演示,

https://regex101.com/r/HPGzRq/1

编辑1:

这是您可以使用的那种 php 代码,

$output2 = '<video src="https://videosource.com" x-webkit-airplay="allow"></video>';
preg_match('/src=\"([^\"]*?)\"/', $output2, $match);
print($match[1]);

$match[1] 在正则表达式中捕获并返回组 1,这些行的输出是,

https://videosource.com

推荐阅读