string sourceStr = "左边范围abc<啊啊>def<呵呵>右边范围";
Regex keyWordRegex = new Regex(@"左边范围(\w*<(\w+)>)*右边范围");
            foreach (Match match in keyWordRegex.Matches(sourceStr))
            {
                foreach (Group group in match.Groups)
                {
                    Response.Write(group.Value);
                    Response.Write("<br />");
                }
            }目的是匹配到“啊啊”与“呵呵”。
以abc与def不固定。
现在得到的结果是
左边范围abc<啊啊>def<呵呵>右边范围
def<呵呵>
呵呵并不是想要的,。
希望大家不吝赐教。

解决方案 »

  1.   


    void Main()
    {
    string sourceStr = "左边范围abc<啊啊>def<呵呵>右边范围";
    Regex keyWordRegex = new Regex(@"左边范围(\w*<(\w+)>)*右边范围");
    foreach (Match match in keyWordRegex.Matches(sourceStr))

    foreach (Capture c in match.Groups[2].Captures)
    {
    Console.WriteLine(c.Value);
     
    }
    }
      /*
         啊啊
    呵呵
      */
    }
      

  2.   

    你应该取 Groups[2]的Captures内的值