Chinaunix首页 | 论坛 | 博客
  • 博客访问: 343822
  • 博文数量: 71
  • 博客积分: 2129
  • 博客等级: 大尉
  • 技术积分: 835
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-18 16:03
文章分类

全部博文(71)

文章存档

2014年(22)

2013年(18)

2012年(24)

2010年(7)

我的朋友

分类: C#/.net

2014-05-16 14:37:37

我们经常使用正则表达式来查找一个或者多个字符串,比如说,可以将一个HTML文件中的所有的链接给找出来。
其实,还可以用它来进行一些比较复杂的查找替换。
比如说,一个字符串里,包含多个 某词
这样的,也就是说,你想把他们这些对应的 一次性去掉,那么你可以使用如下的代码。

        string sRet = “......某词.....“;
        string sRegex = "([^<]+)";
        Regex regex = new Regex(sRegex);
        sRet = regex.Replace(sRet, "$1");

谢谢提醒!@可以用于取消转义,也就是说, 也可以写成
        string sRegex = @"([^<]+)";
我想使用cookie来保存用户上次输入的信息,可是在中文情况下,重新读出来后,遭遇到乱码。
因此想了一个办法,即在保存前进行UrlEncode编码,这样中文就成了英文,
读取后再进行UrlDecode解码,测试证明这个方法是对的。
//写cookie
    Response.Cookies["keywords"].Value = Server.UrlEncode(textBoxKeywords.Text);
    Response.Cookies["keywords"].Expires = DateTime.Now.AddDays(10);
// 读取cookie
if (Request.Cookies["keywords"] != null)
    textBoxKeywords.Text = Server.UrlDecode( Request.Cookies["keywords"].Value );
我打算做一个工具,快速得到搜索引擎的排名,那么就得将浓浆泵关键词放进URL
你也许想直接将汉字放进Url是不行的。
比如说
天气
这样是不行的,你得将汉字转成 %CC%EC%C6%F8 的形式。

解决办法:添加引用 System.Web
string sKeywords="天气";
string sKeywordsCode = System.Web.HttpUtility.UrlEncode(sKeywords,Encoding.GetEncoding(936));

这样就OK了。

在其他情况下,你也许想将Url中的中文解析出来,当然,调用
System.Web.HttpUtility.UrlDecode 就OK了。

阅读(2360) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~