1.取出邮件地址:string a="[email protected];[email protected];"
a由许多邮件地址组成,每个地址由;隔开,现想取出第个邮件地址,
这样写不正确:
Regex MyReg = new Regex(@"(\w)+\W(\w)+;{1}");2.查找某个字符在指定字符串中出现的次数string b="3     *        *        *     Request timed out.
4     *        *        *     Request timed out.
  5     *        *        *     Request timed out."现想查找*的个数及Request Timed out个数求解,解决给分

解决方案 »

  1.   

    1题.试试 
    Regex MyReg = new Regex(@"(\w)+\W(\w)+(\.(\w)+)+");
      

  2.   

    1
    string a = "[email protected];[email protected];";
    Text = Regex.Match(a, @"(\w+@\w+(\.\w+)+);").Result("$1"); //[email protected]
    string b = ".......";
    string key = "*";
    Console.WriteLine((b.Length - b.Replace(key, "").Length) / key.Length);//9key = "Request timed out";
    Console.WriteLine((b.Length - b.Replace(key, "").Length) / key.Length);//3
      

  3.   

    string a = "[email protected];[email protected];";            Regex rg = new Regex(@"(\w)+\W(\w)+\.(\w)+(?=;)");            MatchCollection mc = rg.Matches(a);
                foreach(Match m in mc)
                {
                    Console.WriteLine(m.Value);            }
      

  4.   

    string b = "3     *        *        *     Request timed out.4     *        *        *     Request timed out.5     *        *        *     Request timed out.";            Regex rg2 = new Regex(@"\*");            MatchCollection mc2 = rg2.Matches(b);
                Console.WriteLine(mc2.Count);            Regex rg3 = new Regex(@" Request timed out");            MatchCollection mc3 = rg3.Matches(b);
                Console.WriteLine(mc3.Count);
      

  5.   

    这个电子邮件正则奇怪 - -·
    难道这样的邮件格式就不标准么[email protected]
      

  6.   

    ^([_a-z0-9.]*)@([a-z0-9-]+(\.[a-z0-9-]+)*\.[a-z]+(?=;))
      

  7.   

    @"(\w+(\.\w+)?@\w+(\.\w+)+);"
           ~~~~~~~~
      

  8.   

    \w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
    这个是邮件的正则,用这个去匹配应该就可以了