本文实例讲述了C#分析URL参数获取参数和值对应列表的方法。分享给大家供大家参考。具体分析如下:
这个C#函数用于分析url中传递的所有参数,输出一个参数名和参数值对应的NameValueCollection列表,经常能用得到
/// <summary>/// 分析 url 字符串中的参数信息/// </summary>/// <param name="url">输入的 URL</param>/// <param name="baseUrl">输出 URL 的基础部分</param>/// <param name="nvc">输出分析后得到的 (参数名,参数值) 的集合</param>public static void ParseUrl(string url, out string baseUrl, out NameValueCollection nvc){ if (url == null) throw new ArgumentNullException("url"); nvc = new NameValueCollection(); baseUrl = ""; if (url == "") return; int questionMarkIndex = url.IndexOf('?'); if (questionMarkIndex == -1) { baseUrl = url; return; } baseUrl = url.Substring(0, questionMarkIndex); if (questionMarkIndex == url.Length - 1) return; string ps = url.Substring(questionMarkIndex + 1); // 开始分析参数对 Regex re = new Regex(@"(^|&)?(/w+)=([^&]+)(&|$)?",RegexOptions.Compiled); MatchCollection mc = re.Matches(ps); foreach (Match m in mc) { nvc.Add(m.Result("$2").ToLower(), m.Result("$3")); }}
希望本文所述对大家的C#程序设计有所帮助。
新闻热点
疑难解答