【问题标题】:Media Tags regex code needed for modified YouTube links in Invision Power BoardInvision Power Board 中修改的 YouTube 链接所需的媒体标签正则表达式代码
【发布时间】:2023-03-20 11:39:01
【问题描述】:

IPBoard 已经为常规 YouTube 链接提供了相关的正则表达式代码。我需要有关通过订阅更新电子邮件发送的另一种 YouTube 链接的帮助。以下是一些示例链接:

http://youtube.com/attribution_link?a=r_FgjB-RKNo&u=/watch%3Fv%3DB0_X8zWJd0Q%26feature%3Dem-uploademail (B0_X8zWJd0Q)
http://youtube.com/attribution_link?a=1crTn2Lx38I&u=/watch%3Fv%3DHhebhh2s5d4%26feature%3Dem-uploademail (Hhebhh2s5d4)
http://youtube.com/attribution_link?a=_zMgiznzBto&u=/watch%3Fv%3D-kaoCPvUHJM%26feature%3Dem-uploademail (-kaoCPvUHJM)
http://youtube.com/attribution_link?a=F8VReY1sT0A&u=/watch%3Fv%3D5RLM9rk0Q8s%26feature%3Dem-uploademail (5RLM9rk0Q8s)

末尾括号中的代码是相关的 YouTube 视频 ID。 attribution_link?a= 似乎包含不同视频的随机数字。

IPBoard 后端显示如下:

常规 YouTube 链接的现有正则表达式结构:

http(?:s)?://(www.)?youtube.com/watch\?(\S+?)?v=([\d\w-_]+?)(&\S+?)?

这转换为:

<iframe id="ytplayer" class="EmbeddedVideo" type="text/html" width="640" height="390" src="http://youtube.com/embed/$3?html5=1&fs=1" frameborder="0" allowfullscreen webkitallowfullscreen /></iframe>

IPBoard 指南::

媒体替换匹配

示例链接:http://www.test.com/23423/

匹配:http://www.test.com/{1}/

媒体替换 HTML

You can use $1, $2, etc as variable replacements.

示例链接:&lt;a href="http://www.testm.com/$1/"&gt;$1&lt;/a&gt;

结果:&lt;a href="http://www.testm.com/23423/"&gt;23423&lt;/a&gt;

【问题讨论】:

    标签: regex youtube invision-power-board


    【解决方案1】:

    更新了表达式以处理嵌入的 urlencoded 链接:

    youtube.*?watch.*?v(?:%25|=)([\d\w-_]+)
    

    示例:http://regex101.com/r/fO6qE5


    旧:

    http(?:s)?:\/\/(?:www\.)?youtube\.com\/.*?watch%3Fv%([\d\w-_]+)
    

    示例:http://regex101.com/r/cX9rP2

    【讨论】:

    • 您的代码正在捕获attribution_link?a= 位之后的文本... 此文本似乎是随机的,并且未连接到 YouTube 视频 ID... 视频 ID 在 &amp;u=/watch%3Fv%3D 部分之后带有@最后是 987654329@。谢谢!
    • 似乎不起作用。我替换了您的 regex101.com 条目上的表达式,即使这样也没有显示正确的数据获取。这就是我在 IPB 后端添加数据的方式:imgur.com/xOTV33u.png 谢谢!
    • 啊,你知道它可能是捕获组。它正在检索捕获组 2 而不是 1。立即尝试/
    • 不起作用。不确定我是否在 IP.Board 中输入数据错误。链接根本不嵌入。我的意思是链接甚至没有变成损坏的 YouTube 播放器。 goo.gl/1eAnbU 谢谢。
    • 好的,完全不知道如何做你所问的——你能用重现和测试的步骤更新你的问题吗?哦,没关系,我现在看到了。
    猜你喜欢
    • 2011-04-12
    • 1970-01-01
    • 1970-01-01
    • 2010-11-19
    • 1970-01-01
    • 1970-01-01
    • 2014-03-06
    • 2014-02-14
    相关资源
    最近更新 更多