如何通过RegEx从url中获取这些部分

本文关键字:获取 些部 url 何通过 RegEx | 更新日期: 2023-09-27 18:05:01

我有两个url:

http://sp2013/sites/1234

http://sp2013/pwa/projectsites/projectdetails.aspx?projuid=1234-123-123-123456-123456

我想从第一个url得到最后一部分(总是一个数字(

1234

并且从第二个url也是最后一部分(guid(

1234-123-123-123456-123456

我如何通过RegEx或C#中的字符串操作来实现这一点?

如何通过RegEx从url中获取这些部分

string s = "http://sp2013/sites/1234";
var firstURLlastPart = new Uri(s).Segments.Last();
string s = "http://sp2013/pwa/projectsites/projectdetails.aspx?projuid=1234-123-123-123456-123456";
var secondURLlastPart = s.Split('=').Last();

只需在'/'进行拆分,并将最后一个块用于第一种情况。

str.Split('/').Last()

'='进行拆分,并获取第二种情况下的最后一块

str.Split('=').Last()
(?!'/|'=).[-0-9]+$

这对双方都有效。但它也接受第一个例子中的数字格式如下:

12345-4568