网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > C# > 正文
解读C#正则表达式
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/14
下载{$ArticleTitle}原创论文样式
        // 变成大写
       x = char.ToUpper(x[0]) + x.Substring(1, x.Length-1);
         // 收集所有的字符
         result += x;
     }
    System.Console.WriteLine("result=[" + result + "]");
  
   正象上面的例子所示,我们使用了C#语言中的foreach语句处理每个匹配的字符,并完成相应的处理,在这个例子中,新创建了一个result字符串。这个例子的输出所下所示:
  
  text=[the quick red fox jumped over the lazy brown dog.]
  
  result=[The Quick Red Fox Jumped Over The Lazy Brown Dog.]

基于表达式的模式

  完成上例中的功能的另一条途径是通过一个MatchEvaluator,新的代码如下所示:
  
        static string CapText(Match m)
     {
            //取得匹配的字符串
     string x = m.ToString();
        // 如果第一个字符是小写 
        if (char.IsLower(x[0]))
        // 转换为大写
        return char.ToUpper(x[0]) + x.Substring(1, x.Length-1);
        return x;
     }
   static void Main()
      {
        string text = "the quick red fox jumped over the
              lazy brown dog.";
     System.Console.WriteLine("text=[" + text + "]");
        string pattern = @"w+";
        string result = Regex.Replace(text, pattern,
              new  MatchEvaluator(Test.CapText));
     System.Console.WriteLine("result=[" + result + "]");
   }
  
  同时需要注意的是,由于仅仅需要对单词进行修改而无需对非单词进行修改,这个模式显得非常简单。

常用表达式

  为了能够更好地理解如何在C#环境中使用规则表达式,我写出一些对你来说可能有用的规则表达式,这些表达式在其他的环境中都被使用过,希望能够对你有所帮助。
  
罗马数字

           string p1 = "^m*(d?c{0,3}|c[dm])" + "(l?x{0,3}|x[lc])(v?i{0,3}|i[vx])?$";
     string t1 = "vii";
     Match m1 = Regex.Match(t1, p1);
  
交换前二个单词

           string t2 = "the quick brown fox";
     string p2 = @"(S+)(s+)(S+)";
     Regex x2 = new Regex(p2);
     string r2 = x2.Replace(t2, "?$3?$2?$1", 1);
  
关健字=值

          string t3 = "myval = 3";
          string p3 = @"(w+)s*=s*(.*)s*?$";
    Match m3 = Regex.Match(t3, p3);
  
实现每行80个字符

         &nbs

  • 上一篇资讯: C#正确实现IDisposable接口
  • 下一篇资讯: C# Regex 深入正则表达式
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号