我正在尝试解析包含多个 YouTube 链接但链接之间没有空格的字符串。链接也可以以“http”或“https”开头。示例字符串:
https://www.youtube.com/watch?v=abc123http://www.youtube.com/watch?v=abc123https://www.youtube.com/watch?v=abc123
所以有 3 个链接。我根本无法控制该字符串,因为它来自人们发布链接的聊天服务,然后我的工作是对 URL 进行正则表达式并记录下来。
这是我到目前为止提出的正则表达式:
(https?\:\/\/)?(www\.)?(youtube\.com|youtu\.?be)\/\S+
不过,当它看到字符串下方的模式时,我不确定如何让它中断。谁能帮忙?
请您参考如下方法:
您可以在 http 上拆分,然后将其添加回去:
var input = "https://www.youtube.com/watch?v=abc123http://www.youtube.com/watch?v=abc123https://www.youtube.com/watch?v=abc123";
var split = input.Split("http");
var urls = split.Select(x => "http" + x);
这当然假设“http”没有出现在 url 中的其他任何地方......
