如何通过RegEx从网址中获取部分内容

时间:2016-09-01 07:20:37

标签: c# regex url

我有两个网址:

http://sp2013/sites/1234

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

我想从第一个网址获取最后一个部分(总是一个数字)

1234

从第二个网址也是最后一个部分(guid)

1234-123-123-123456-123456

我如何通过RegEx实现这一点,或者在C#中使用字符串操作?

3 个答案:

答案 0 :(得分:5)

#!/bin/bash
uids=$( cat /etc/passwd | cut -d: -f3 | sort -n )
uid=999

while true; do
    if ! echo $uids | grep -F -q -w "$uid"; then
        break;
    fi

    uid=$(( $uid + 1))
done

echo $uid

答案 1 :(得分:1)

只需在'/'分割,然后取第一个案例的最后一个块。

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

'='分割,并获取第二个案例的最后一个块

str.Split('=').Last()

答案 2 :(得分:0)

(?!\/|\=).[-0-9]+$

这对两者都有效。但它也接受如果在第一个例子中将是这样的格式数字:

12345-4568