【发布时间】:2013-10-24 15:05:36
【问题描述】:
我有一个正则表达式模式,我正在使用(从 Stack Overflow 获得)从 vimeo URL 中提取视频 ID:
var regExp = /http:\/\/(www\.)?vimeo.com\/(\d+)($|\/)/;
var match = url.match(regExp);
无论指定 http 还是 https,我都需要它来工作。我试过了
var regExp = /http(s)?:\/\/(www\.)?vimeo.com\/(\d+)($|\/)/;
但这在 http 和 https 上都失败了。
帮助一个兄弟。
【问题讨论】:
-
你可以试试:
var regExp = /https?:\/\/(www\.)?vimeo\.com\/(\d+)/; -
很惊讶为什么
(s)?不匹配而s?匹配。只是捕获组不同。 -
@RohitJain 查看我的答案,这不是因为它不再匹配,而是因为捕获组索引会改变,如果他没有修改其余代码,则将错误的匹配返回给 OP .
标签: javascript regex