我正在尝试在 C# 中定义一个正则表达式,当给定一个 url 时,它将返回除协议之外的 url,例如 http。也就是说,我需要跳过任何协议,只返回域和路径。
有任何想法吗?
尝试使用以下正则表达式:
^[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;
}
使用这个正则表达式(?<=://).+
或者
在 regexGroup[1] 中使用此正则表达式而不向后看://(.+)
您可以使用简单的替换
string url = "http://url.com";
if(url.Contains("http://")){
url = url.Replace("http://","");
}
else if(url.Contains("https://")){
url = url.Replace("https://","");
}
或者
url = Regex.Replace(url,@"[a-z]+://","");