Regex 用于跳过协议url的正则表达式

Regex 用于跳过协议url的正则表达式,regex,Regex,我试图在C#中定义一个正则表达式,当给定url时,它将返回除协议(如http)之外的url。也就是说,我需要跳过任何协议,只返回域和路径 有什么想法吗?试试下面的正则表达式: ^[a-z]+://(.*)$ string input = "http://www.google.com/search"; Match match = Regex.Match(input, @"^[a-z]+://(.*)$", RegexOptions.IgnoreCase); if (match.Succes

我试图在C#中定义一个正则表达式,当给定url时,它将返回除协议(如http)之外的url。也就是说,我需要跳过任何协议,只返回域和路径


有什么想法吗?

试试下面的正则表达式:

^[a-z]+://(.*)$


string input = "http://www.google.com/search";

Match match = Regex.Match(input, @"^[a-z]+://(.*)$", RegexOptions.IgnoreCase);

if (match.Success)
{
    string url = match.Groups[1].Value;
}

使用此正则表达式
(?您可以使用简单替换

string url = "http://url.com";
        if(url.Contains("http://")){
            url = url.Replace("http://","");
        }
        else if(url.Contains("https://")){
            url = url.Replace("https://","");
        }


是否可以将group0设置为非协议部分?当然,只需使用
()
^([a-z]+)://(.*)$
url = Regex.Replace(url,@"[a-z]+://","");