如题,获取目“目的地指南“,“云南”等<a href="/" kxalog="id=g_cjgx">目的地指南</a><span>&gt;</span><a href='/Travel/continent/c_0.html' kxalog='id=g_mulu'>亚洲</a><span>&gt;</span><a href='/' kxalog='id=g_mulu'>中国</a><span>&gt;</span><a href='/801279' kxalog='id=g_mulu'>云南</a><span>&gt;</span><a href='/800742' kxalog='id=g_mulu'>丽江</a><span>&gt;</span><a href="/800820" kxalog="id=g_cjgx">玉龙雪山</a><span>&gt;</span>景点介绍

解决方案 »

  1.   

    [code=Java]string :
    <a href="/" kxalog="id=g_cjgx">目的地指南</a><span>&gt;</span><a href='/Travel/continent/c_0.html' kxalog='id=g_mulu'>亚洲</a><span>&gt;</span><a href='/' kxalog='id=g_mulu'>中国</a><span>&gt;</span><a href='/801279' kxalog='id=g_mulu'>云南</a><span>&gt;</span><a href='/800742' kxalog='id=g_mulu'>丽江</a><span>&gt;</span><a href="/800820" kxalog="id=g_cjgx">玉龙雪山</a><span>&gt;</span>景点介绍
    regex:href.*?>(.*?)</a
    Results:
    您的表达式获取到6项结果,分组个数为2.详细如下:
    这是第1个组,组名为[0],所匹配到的明细如下:
    这是第1条记录:所捕获的字符串为:href="/" kxalog="id=g_cjgx">目的地指南</a
    这是第2条记录:所捕获的字符串为:href='/Travel/continent/c_0.html' kxalog='id=g_mulu'>亚洲</a
    这是第3条记录:所捕获的字符串为:href='/' kxalog='id=g_mulu'>中国</a
    这是第4条记录:所捕获的字符串为:href='/801279' kxalog='id=g_mulu'>云南</a
    这是第5条记录:所捕获的字符串为:href='/800742' kxalog='id=g_mulu'>丽江</a
    这是第6条记录:所捕获的字符串为:href="/800820" kxalog="id=g_cjgx">玉龙雪山</a这是第2个组,组名为[1],所匹配到的明细如下:
    这是第1条记录:所捕获的字符串为:目的地指南
    这是第2条记录:所捕获的字符串为:亚洲
    这是第3条记录:所捕获的字符串为:中国
    这是第4条记录:所捕获的字符串为:云南
    这是第5条记录:所捕获的字符串为:丽江
    这是第6条记录:所捕获的字符串为:玉龙雪山[/code]
      

  2.   

    谢谢,能否直接获取结果,我试着用(?= 子表达式)和(?<= 子表达式),如果只有<a href="/" kxalog="id=g_cjgx">...</a>结果是正确的,多个a元素就不对了
      

  3.   

    这样就可以了
    (?<=<a[^>]+>)[^<]+(?=</a>)
      

  4.   

    @"<a[\s\S]*?>(?<content>[\s\S]*?)</a>"
    这个应该是可以的。
    在content中。
      

  5.   

    谢谢大家,这些都能用。我本来是要获取<div class="link1">中的<a>元素中的文本,觉得找大家要一部分的例子应该就可以自己完成了,可是最终还是实现不了,正则表达式太不熟悉了,请大家帮忙,我可以再加分哦<div style="margin:0 auto;width:980px;">
    <div id="header"></div>
    <div class="link1">
    <a href="/" kxalog="id=g_cjgx">目的地指南</a><span>&gt;</span><a href='/Travel/continent/c_0.html' kxalog='id=g_mulu'>亚洲</a><span>&gt;</span><a href='/' kxalog='id=g_mulu'>中国</a><span>&gt;</span><a href='/801279' kxalog='id=g_mulu'>云南</a><span>&gt;</span><a href='/800742' kxalog='id=g_mulu'>丽江</a><span>&gt;</span><a href="/800820" kxalog="id=g_cjgx">玉龙雪山</a><span>&gt;</span>景点介绍
    </div>
    <h1>玉龙雪山旅游指南</h1>
    </div>
      

  6.   

    如果没有div嵌套,最简单的实现方式就是分两次取Match mDiv = Regex.Match(str, @"(?<=<div\s+class=""link1"">)[\s\S]*?(?=</div>)", RegexOptions.IgnoreCase);
    MatchCollection mc = Regex.Matches(mDiv.Value, @"(?<=<a[^>]*>)[\s\S]*?(?=</a>)", RegexOptions.IgnoreCase);
    foreach (Match m in mc)
    {
        richTextBox1.Text += m.Value + "\n";
    }