使用正则表达式检测视频 ID
Detect video ID with regex
我正在尝试检测 vimeo URL 的 9 位 ID 部分。这是我目前所拥有的。
/\[\[(https?:\/\/vimeo\.com\/[0-9]+$)\]\]/gm
[[https://vimeo.com/channels/mercedesbenz/166551756]]
[[https://vimeo.com/153002910]]
[[https://vimeo.com/jp/channels/staffpicks/259634725]]
您正在寻找输入的结尾,而还剩下两个字符,并且您正在寻找紧跟在域名之后的数字,而在您的示例输入中,它们在 URL 中以不同的顺序出现。
\[\[(https?:\/\/vimeo\.com\/[0-9]+$)\]\]
^^^^^^^
你可以这样做:
\[\[https?:\/\/vimeo\.com\/[^\]]*?(\d+)\]\]
您可以尝试类似的方法:
这将匹配出现在斜杠 /
之后和 ]]$
之前的 9 位数字,其中 $
表示行尾。要仅匹配 vimeo 链接,您可以在前面的正则表达式中包含 vimeo.*
,并捕获第 1 组中的数字:
vimeo.*(?<=\/)(\d{9})(?=]]$)
我正在尝试检测 vimeo URL 的 9 位 ID 部分。这是我目前所拥有的。
/\[\[(https?:\/\/vimeo\.com\/[0-9]+$)\]\]/gm
[[https://vimeo.com/channels/mercedesbenz/166551756]]
[[https://vimeo.com/153002910]]
[[https://vimeo.com/jp/channels/staffpicks/259634725]]
您正在寻找输入的结尾,而还剩下两个字符,并且您正在寻找紧跟在域名之后的数字,而在您的示例输入中,它们在 URL 中以不同的顺序出现。
\[\[(https?:\/\/vimeo\.com\/[0-9]+$)\]\]
^^^^^^^
你可以这样做:
\[\[https?:\/\/vimeo\.com\/[^\]]*?(\d+)\]\]
您可以尝试类似的方法:
这将匹配出现在斜杠 /
之后和 ]]$
之前的 9 位数字,其中 $
表示行尾。要仅匹配 vimeo 链接,您可以在前面的正则表达式中包含 vimeo.*
,并捕获第 1 组中的数字:
vimeo.*(?<=\/)(\d{9})(?=]]$)