zoukankan
html css js c++ java
用 C# 分析 URL 中的参数信息
using
System;
using
System.Collections.Specialized;
using
System.Text.RegularExpressions;
namespace
UrlParse
{
/**/
///
<summary>
///
分析 url 字符串中的参数信息
///
</summary>
class
Class1
{
/**/
///
<summary>
///
应用程序的主入口点。
///
</summary>
[STAThread]
static
void
Main(
string
[] args)
{
string
url
=
"
http://www.xxx.com/xyz/hello.asp?a=3&typeId=45&cc=ILoveYou
"
;
NameValueCollection nvc;
string
baseUrl;
ParseUrl(url,
out
baseUrl,
out
nvc);
//
output results
Console.WriteLine(
"
baseUrl: {0}
"
, baseUrl);
Console.WriteLine(
"
parameters:
"
);
for
(
int
i
=
0
; i
<
nvc.Count; i
++
)
Console.WriteLine(
"
{0}, {1}
"
, nvc.Keys[i], nvc[i]);
Console.ReadLine();
}
/**/
///
<summary>
///
分析 url 字符串中的参数信息
///
</summary>
///
<param name="url">
输入的 URL
</param>
///
<param name="baseUrl">
输出 URL 的基础部分
</param>
///
<param name="nvc">
输出分析后得到的 (参数名,参数值) 的集合
</param>
///
<author>
木野狐(Neil Chen)
</author>
///
<date>
2005-06-23
</date>
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
"
), m.Result(
"
$3
"
));
}
}
}
}
查看全文
相关阅读:
解决拼团首页swiper组件手动轮播卡顿问题
mac上charels抓包工具使用技巧
加载图片优化(先用一张小图片做高斯模糊, 再加载大图)
requirejs2读书笔记
escape encodeURI encodeURIComponent区别
js与cookie的domain和path之间的关系
Oracle使用——数据泵导入导出数据库——impdp/expdp使用
Oracle基础知识点——Oracle服务端和客户端
Oracle使用——oracle11g安装——Oracle要求的结果: 5.0,5.1,5.2,6.0 6.1 之一 实际结果: 6.2
Spring 学习——Spring AOP——AOP配置篇Advice(有参数传递)
原文地址:https://www.cnblogs.com/RChen/p/179627.html
最新文章
python中的正则表达式(re模块)
ORACLE 字符串补零
Oracle高级查询之OVER (PARTITION BY ..)
PARTITION BY
据挖掘在金融行业的应用
数据的标准化处理及实际应用
Appium
Appium
Appium -- adb monkey操作(一)
Appium
热门文章
python -- os处理模块
python -- 文件处理
python -- 正则表达式&re模块(转载)
python -- 装饰器
python -- 生成器
python -- 迭代器
es6小技巧
MacBook Pro 下Bash Shell 利用Alias 简化命令
npm常用命令总结
移动端返回上一页实现方法
Copyright © 2011-2022 走看看