搜索 & 匹配爪哇脚本中的正则表达式

我正在尝试从另一组优酷网址中获取优酷视频ID。我写了下面的正则表达式,用于从一组youtube网址中获取视频ID。我用蟒蛇写了这个。

问题是我们能不能在javascript中也实现相同的逻辑?由于我对javascript很陌生,所以我需要帮助。

if data.startswith('https://') or data.startswith('http://'):
        v = re.search("(?:\/|%3D|v=|vi=)([0-9A-z-_]{11})(?:[%#?&]|$)", data)
        data="https://www.youtube.com/watch?v="+v.group(1)

*以上代码为蟒蛇,数据为优酷网址。(我已经尝试了多次,但对我不起作用,因此在这里。


慕勒3428872
浏览 102回答 2
2回答

尚方宝剑之说

的脚本等效项是 。startswithstartsWith的 JS 等效项是 。它返回一个数组,其中包含整个匹配项和捕获的组。re.search()String.prototype.match()A-z是正则表达式中的不正确范围。将 或 与修饰符一起使用以使正则表达式不区分大小写。A-Za-zivar data = 'http://www.youtube.com/watch?v=-wtIMTCHWuI';if (data.startsWith('https://') || data.startsWith('http://')) {  v = data.match(/(?:\/|%3D|v=|vi=)([0-9A-Z-_]{11})(?:[%#?&]|$)/i);  if (v) {    data = "https://www.youtube.com/watch?v=" + v[1];  }  console.log(data);}

慕尼黑5688855

JS具有相同的函数,因此功能将与此相同,请检查它JS启动与函数
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript