请问正则表达式怎么匹配第一个符合的字符串.比如:
"[!--era.xwlb--!]as^<dfd[!--era.xwlb--!]"怎么匹配两个"[!--era.xwlb--!]"字符串,new Regex(@"\[!--\w+.*\d*--!\]").Matches("[!--era.xwlb--!]as^<dfd[!--era.xwlb--!]")匹配的结果是:
"[!--era.xwlb--!]as^<dfd[!--era.xwlb--!]"一整串

解决方案 »

  1.   

    正则分组
    http://www.seoszcn.com/article/regex/reg2009061902.asp
      

  2.   

    "[!--era.xwlb--!]as^ <dfd[!--era.xwlb--!]dfd[!--era.xwlb--!]"如果是这样一个字符串,我要匹配三个[!--era.xwlb--!],也能行得通吗?
      

  3.   


    自己试下不就知道了,这种问题何必要问?            string test = "[!--era.xwlb--!]as^ <dfd[!--era.xwlb--!]dfd[!--era.xwlb--!]";
                Regex reg = new Regex(@"\[!--.*?--!\]");
                MatchCollection mc = reg.Matches(test);
                foreach (Match m in mc)
                {
                    richTextBox2.Text += m.Value + "\n";
                }
      

  4.   

    .*?
    [\s\S]*?
    [\w\W]*?客客,这3个效率是一样的吗?