<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      正則表達式提供了功能強大、靈活而又高效的方法來處理文本。
                  正則表達式的全面模式匹配表示法使您可以快速分析大量文本以找到特定的字符模式;提取、編輯、替換或刪除文本子字符串;或將提取的字符串添加到集合以生成報告。
                  對于處理字符串的許多應用程序而言正則表達式是不可缺少的工具。
      5.1  正則表達式簡介
      正則表達式:用某種模式去匹配指定字符串的一種表示方式。正則表達式由普通字符和元字符組成。
      普通字符:常使用的字符如字母、數字、漢字等
      元字符:可以匹配某些字符形式的具有特殊含義的字符,其作用類似于DOS命令使用的通配符。
      正則表達式基本書寫符號
      正則表達式限定符
      3. 匹配字符集
        (1) 匹配字符集是預定義的用于正則表達式中的符號集。
        (2) 如果字符串與字符集中的任何一個字符相匹配,它就會找到這個匹配項。
      字符詳解請查看 正則表達式符號解釋
      4. 分組構造
      5. 正則表達式舉例
      非負整數:“^\d+$ ”
      正整數: “ ^[0-9]*[1-9][0-9]*$”
      非正整數: “ ^((-\d+)|(0+))$”
      整數: “ ^-?\d+$”
      英文字符串: “ ^[A-Za-z]+$”
      英文字符數字串: “ ^[A-Za-z0-9]+$”
      英數字加下劃線串: “^\w+$”
      E-mail地址:“^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$”
      URL:“^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$”

      5.2  Regex類

      Regex 類表示不可變(只讀)正則表達式類。它還包含各種靜態方法,允許在不顯式創建其他類的實例的情況下使用其他正則表達式類。
          Regex 類在System.Text.RegularExpressions命名空間下。
          這里僅介紹IsMatch方法。
      IsMatch方法:正則表達式在輸入字符串中是否找到匹配項。
      該方法有四種重載的形式:
      public bool IsMatch(string str);
           表示在構造函數中指定的正則表達式在str中是否找到匹配項。
      public bool IsMatch(string str, int start);
         表示在構造函數中指定的正則表達式在str的指定起始位置開始是否找到匹配項。參數start表示開始搜索的字符位置。
      public static bool IsMatch(string str, string pattern);
          表示使用pattern參數中指定的正則表達式是否在str中找到匹配項。
      public static bool IsMatch(string str, string pattern, RegexOptions options);
          表示使用pattern參數中指定的正則表達式和options枚舉提供的匹配選項在input中是否找到匹配項。其中options是RegexOption枚舉值的按位“或”組合。
      例:
                 Regex r = new Regex(@"[0-9a-z]{3,5}");
                  string[] tests = ...{"abc", "123456", "(aa22bb33)", "ab"};
                  foreach (string test in tests)
                  ...{
                      if (r.IsMatch(test))
                      ...{
                          Console.WriteLine("{0}中有匹配的項", test);
                      }
                      else
                      ...{
                          Console.WriteLine("{0}中沒有匹配的項", test);
                      }
                  }
      5.3  Match類

      Match類表示單個正則表達式匹配操作的結果,得到的結果是只讀的。該類沒有公共構造函數,而是用Regex對象的Match方法返回的結果創建該類的對象。
      例如:
           Regex r = new Regex("abc");
           Match m = r.Match("123abc456");
           if (m.Success)
           ...{
               Console.WriteLine("找到匹配位置:" + m.Index);
               Console.WriteLine("找到匹配結果:" + m.Value);
           }
      運行結果:
      找到匹配位置:3
      找到匹配結果:abc
      5.4  MatchCollection類
      MatchCollection類表示成功的非重疊匹配的序列,得到的集合是只讀的。該類同樣沒有公共構造函數,而是用Regex.Matches方法返回的結果創建該類的對象。
      例如:
           Regex r = new Regex("abc");
          MatchCollection mc = r.Matches("123abc4abcd");
          int count = mc.Count;
          String[] results = new String[count];
          int[] matchPosition = new int[count];
          for (int i = 0; i < count; i++)
          ...{
               results[i] = mc[i].Value;
               matchPosition[i] = mc[i].Index;
               Console.WriteLine("第{0}個匹配結果:{1},位置:{2}",i+1, results[i],      matchPosition[i]);
          }
      運行結果:
      第1個匹配結果:abc,位置:3
      第2個匹配結果:abc,位置:7
      5.5  Group類
      Group類表示單個捕獲組的結果。當與正則表達式匹配的子字符串有多組時,可以使用該類得到某一組的結果。例如:
                  string text = "One car red car blue car";
                    string pat = @"(w+)s+(car)";
                   Regex r = new Regex(pat, RegexOptions.IgnoreCase);
                   Match m = r.Match(text);
                   int matchCount = 0;
                   while (m.Success)
                   ...{
                        Console.WriteLine("Match" + (++matchCount));
                        for (int i = 1; i <= 2; i++)
                        ...{
                           Group g = m.Groups[i];
                           Console.WriteLine(string.Format("Group{0}='{1}'", i, g));
                           CaptureCollection cc = g.Captures;
              for (int j = 0; j < cc.Count; j++)
                      ...{
                          Capture c = cc[j];
                          Console.WriteLine(string.Format(
                               "Capture{0}='{1}', Position={2}", j, c, c.Index));
                      }
                  }
                  m = m.NextMatch();
              }
              Console.ReadLine();
      輸出結果:
      Match1
      Group1='One'
      Capture0='One', Position=0
      Group2='car'
      Capture0='car', Position=4
      Match2
      Group1='red'
      Capture0='red', Position=8
      Group2='car'
      Capture0='car', Position=12
      Match3
      Group1='blue'
      Capture0='blue', Position=16
      Group2='car'
      Capture0='car', Position=21

      本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/ddafei/archive/2007/06/08/1643209.aspx

      Posted on 2009-06-26 22:42  chenpeng  閱讀(204)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 摸丰满大乳奶水www免费| 国产日韩精品免费二三氏| 欧美自拍另类欧美综合图片区| 久艹视频免费看| 亚洲成av人片天堂网无码| 亚洲av综合色区无码专区| 国产成人精品无码一区二区| 福利一区二区不卡国产| 丝袜老师办公室里做好紧好爽| 亚洲最大成人美女色av| 久久亚洲精品11p| 亚洲国产精品久久久久秋霞| 国产精品成人aaaaa网站| 麻豆麻豆麻豆麻豆麻豆麻豆| 欧美丰满熟妇乱XXXXX网站| 99视频在线精品国自产拍| 建德市| 另类 专区 欧美 制服| 最新国产AV最新国产在钱| www久久只有这里有精品| 成人性生交大片免费看| 久久久久无码国产精品不卡 | 少妇xxxxx性开放| 亚洲Av综合日韩精品久久久| 精品麻豆国产色欲色欲色欲WWW| 容城县| 又黄又爽又色的少妇毛片| 国产亚欧女人天堂AV在线| 日韩av在线不卡一区二区三区| 国产黄色看三级三级三级| 欧美牲交a欧美牲交aⅴ一| 无码无需播放器av网站| 不卡乱辈伦在线看中文字幕| 久久久久国精品产熟女久色| 国产超碰人人爽人人做| 亚洲成人高清av在线| 男女性高爱潮免费网站| 性色在线视频精品| 国产国语对白露脸正在播放| 亚洲精品电影院| 中文有码字幕日本第一页|