【问题标题】:regular expression to match src attribute value within a video tag正则表达式匹配视频标签中的 src 属性值
【发布时间】:2015-03-11 10:05:11
【问题描述】:
<video id="video" class="playerVideo" autoplay="1" x-webkit-airplay="allow" src="**matchme.mp4**" type="video/mp4">

这是我目前所拥有的:

(?<=<video[^<>]+src=")/w*(?<!"[^<>]/video>)

我认为我的问题源于not being able to use repetition within a lookaround。 为了清楚起见,我想匹配视频标签的 src 属性中的 value,不包括属性本身 (src="ma​​tchme")。

【问题讨论】:

  • 那就是去的地方:regular expressions 101
  • 使用捕获组。一个合适的 HTML 解析器会更好。
  • @HamZa 谢谢,另外,在这种情况下不适合使用 html 解析器。

标签: regex


【解决方案1】:

我认为这是一个更好的解决方案,因为它适用于 PCRE, JS, and Python

<video[^>]+src=\"([^"]+)

但是,我无法让它与 Sublime Text 3 一起使用。 最后,这适用于 sublime:

<video[^>]+src=\"\K[^"]+

The \K assertion tells the engine to drop what was matched so far from the final match it returns.

【讨论】:

    【解决方案2】:

    试试这个模式:

    (?:<video[^>]+src=\")(?<src>[^"]+)
    

    捕获组是“src”

    工作示例:

    【讨论】:

    • 在 sublime 中它匹配从开始视频标签 (
    • 我得到了这个为 JS (?:&lt;video[^&gt;]+src=\")([^"]+) 工作,但仍然没有在 sublime 中工作
    • 显然你必须使用 sublime 的外观? stackoverflow.com/questions/24412844/…
    猜你喜欢
    • 2011-04-12
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-18
    相关资源
    最近更新 更多