gpt4 book ai didi

regex - Azure 媒体播放器播放错误 (0x10600003)

转载 作者:行者123 更新时间:2023-12-03 04:03:06 26 4
gpt4 key购买 nike

不久前,我们开始使用 Azure Media Player 在我们的网站上播放视频,直到最近它都运行良好。

曾经有效的链接:

http://trueiqmediaservice.streaming.mediaservices.windows.net/1002f113-9ccc-49a9-8549-c4bebabb47ee/Why are we makin.ism/manifest

这是定义正则表达式的方法:

private function register_embed_handler()
{
wp_embed_register_handler(
'f',
'#((http[s]?):\/)?(\/)(\/)?fhtrueiqmediaservice\.streaming\.mediaservices\.windows\.net\/?(.*)_(.*).ism\/manifest#',
[$this, 'wp_embed_register_handler']
);
}

嗯..看起来 Azure 更新了它们处理链接的方式,因此更改为:

https://mediasvcclqg331kwhpnq.blob.core.windows.net/asset-ab84ad2b-3ae4-4024-afd3-8f12cdecc266/2020-02-03 Crispin EDIT 2_1.mp4?sv=2017-04-17&sr=c&si=8b3d0ab4-5d65-470e-a26e-f7e65782f36a&sig=UW1aCdpqR7g2GSUeCD5ASiEazkSMl7q4SwiDLhtfHdQ%3D&st=2020-04-16T19%3A16%3A07Z&se=2120-04-******

我将如何处理新链接中使用的正则表达式?我对正则表达式很糟糕,并且不知道如何开始解决这个问题。所有帮助将不胜感激!

最佳答案

您之前的模式非常具体,新链接有点长。

例如,您可以使用使第一部分特定的模式,如果 .mp4 应始终存在,请确保与其匹配。

由于示例链接中唯一可能的空格位于 .mp4 的文件名中,因此您可以使用 \S* 匹配 0+ 次出现来匹配字符串的其余部分非空白字符。

https?:\/\/[^.\s]+\.blob\.core\.windows\.net\/asset-[a-f0-9]+(?:-[a-f0-9]+)+\/.*?\.mp4\S*

说明

  • https?:\/\/ 将协议(protocol)与可选 s 匹配,然后 ://
  • [^.\s]+ 匹配除 . 或空白字符 之外的任何字符 1+ 次(网址的第一部分可能看起来像这样有点随机。如果不是,您可以按字面意思进行匹配)
  • \.blob\.core\.windows\.net\/asset- 匹配 .blob.core.windows.net/asset-
  • [a-f0-9]+(?:-[a-f0-9]+)+ 匹配类似 guid 的模式,其中连字符部分重复 1 次或多次
  • \/.*?\.mp4 匹配 / 后跟至少一个可能的字符,直到遇到 .mp4
  • \S* 匹配 0 次以上非空白字符

Regex demo

关于regex - Azure 媒体播放器播放错误 (0x10600003),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61274047/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com