gpt4 book ai didi

c# - 测试捕获的组是否在 C#.NET 的正则表达式中成功

转载 作者:太空宇宙 更新时间:2023-11-03 11:34:37 26 4
gpt4 key购买 nike

我正在尝试验证视频链接 URL。特别是,验证共享链接 URL 与嵌入视频源 URL。我当前的正则表达式看起来像这样,用于验证来自 vimeo.com 的两种不同类型的视频 URL:

^(?i)(http[s]?:\/\/)?(w{3}\.)?(?'gp1'player\.)vimeo\.com\/(?(k'gp1')video\/|())(?((\w)+\/?$

我正在尝试使用相同的正则表达式来验证以下 URL(以下链接是伪造的,因此请勿点击它们):

我似乎无法让正则表达式适用于两种情况,如果可能的话,我希望使用一个正则表达式来测试这两种情况。

提前致谢。

编辑:感谢 dtb 的帖子。如果用户传入无效的 url,正则表达式似乎仍然会通过:例如,如果用户不小心提供了 http://player.vimeo.com/123FEDSE而不是有效的 http://player.vimeo.com/video/123FEDSE ,它将通过正则表达式验证。我正在尝试使用正则表达式来验证 URL 以确保其格式正确。

有没有办法检查以前的捕获组是否存在?

谢谢!

最佳答案

检查

Match match = Regex.Match(input, pattern); 

if(match.Success) {
//do something
}

关于c# - 测试捕获的组是否在 C#.NET 的正则表达式中成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6702364/

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