C#分析URL参数并获取参数和值对应列表的方法
本文实例讲述了C#分析URL参数获取参数和值对应列表的方法。分享给大家供大家参考。具体分析如下:
这个C#函数用于分析url中传递的所有参数,输出一个参数名和参数值对应的NameValueCollection列表,经常能用得到
///<summary>
///分析url字符串中的参数信息
///</summary>
///<paramname="url">输入的URL</param>
///<paramname="baseUrl">输出URL的基础部分</param>
///<paramname="nvc">输出分析后得到的(参数名,参数值)的集合</param>
publicstaticvoidParseUrl(stringurl,outstringbaseUrl,outNameValueCollectionnvc)
{
if(url==null)
thrownewArgumentNullException("url");
nvc=newNameValueCollection();
baseUrl="";
if(url=="")
return;
intquestionMarkIndex=url.IndexOf('?');
if(questionMarkIndex==-1)
{
baseUrl=url;
return;
}
baseUrl=url.Substring(0,questionMarkIndex);
if(questionMarkIndex==url.Length-1)
return;
stringps=url.Substring(questionMarkIndex+1);
//开始分析参数对
Regexre=newRegex(@"(^|&)?(\w+)=([^&]+)(&|$)?",RegexOptions.Compiled);
MatchCollectionmc=re.Matches(ps);
foreach(Matchminmc)
{
nvc.Add(m.Result("$2").ToLower(),m.Result("$3"));
}
}
希望本文所述对大家的C#程序设计有所帮助。