正则表达式获得src

时间:2016-11-01 23:25:31

标签: regex iframe

我正在尝试从HTML输入中检索来自不同iframe的部分src。

到目前为止,我尝试了不同的方法,但它们都不适用于所有的iframe。到目前为止我尝试了什么:

<iframe(.*?)><\/iframe>
<iframe src="(.+?)".+</iframe>
<iframe.+?src=[\"'](.+?)[\"'].*?>

以下是我拥有的iframe代码示例:

<iframe src="http://www.youtube.com/embed/NM51qOpwcIM?modestbranding=1;rel=0;showinfo=0;autoplay=0;autohide=1;yt:stretch=16:9;wmode=transparent;?wmode=transparent" allowfullscreen="" style="width: 640px; height: 361.057px;" frameborder="0"></iframe>

<iframe src="https://www.youtube.com/embed/VASywEuqFd8?feature=oembed" allowfullscreen="" width="660" height="371" frameborder="0"></iframe>

理想情况下,我想从头开始并在第一个问号(?)之前检索src:

http://www.youtube.com/embed/NM51qOpwcIM

谢谢! :)

1 个答案:

答案 0 :(得分:3)

这可以使用

来实现
(?<=src=").*?(?=[\?"])

请参阅working example on Regex101

说明

  1. (?<=src=")前置src="
  2. .*?懒惰匹配任何令牌
  3. (?=[\?"])直到?"成为下一个令牌