我要根据ID匹配出下面二个DIV里面的全部内容,请问各位用正则怎么写呀。。  <div class="sbox_3" id="EFF_PINFO_Con_2" style="display: none;"><P>电池 x1&nbsp; 电源适配器 x1&nbsp; 说明书 x1</P><div class="State"><strong>声明:</strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解!</div></div>

解决方案 »

  1.   


    string id = Console.ReadLine();
    string pattern = @"(?si)(?<=<div[^<>]+id=""" + id.Trim() + @"""[^<>]*>((?!<div).)*<div[^<>]*>)((?!</div>).)*";
      

  2.   

    帮忙看下了呀!!!
    “/”应用程序中的服务器错误。
    正在分析“(?si)(?<=<div[^<>]+id="EFF_PINFO_Con_2"[^<>]*& gt;((?!<div).)*<div[^<>]*>)((?!</div>).)*")”- ) 过多。 
      

  3.   

    你要得到这个?
    <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解!
    还是  
    <P>电池 x1&nbsp; 电源适配器 x1&nbsp; 说明书 x1 </P> <div class="State"> <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解!
      

  4.   

    哈哈你来了呀我要得到是这样的! 就是那整个DIV里面的全部内容<P>电池 x1&nbsp; 电源适配器 x1&nbsp; 说明书 x1 </P> <div class="State"> <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解!
      

  5.   

    <P>电池 x1&nbsp; 电源适配器 x1&nbsp; 说明书 x1 </P> <div class="State"> <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解!
    后面有没有</div>
      

  6.   


    你看看最后的括号是不是多了一个 ((?! </div>).)*")
      

  7.   


    (?si)(? <= <div[^ <>]+id="EFF_PINFO_Con_2"[^ <>]*& gt;((?! <div).)* <div[^ <>]*>)
    这样也不行呀!!  是不是哪里不太对呀,麻烦再帮忙看下拉!!!
      

  8.   

    我是这么用的            string input = @"<div class=""sbox_3"" id=""EFF_PINFO_Con_2"" style=""display: none;""> <P>电池 x1&nbsp; 电源适配器 x1&nbsp; 说明书 x1 </P> <div class=""State""> <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解! </div> </div>";
                string id = "EFF_PINFO_Con_2";
                string pattern = @"(?si)(?<=<div[^<>]+id=""" + id.Trim() + @"""[^<>]*>((?!<div).)*<div[^<>]*>)((?!</div>).)*";
                Match m = Regex.Match(input, pattern);
                Console.WriteLine(m.Value);结果  <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解! 
      

  9.   

    谢谢 可以! 不过得出来的结果是 
    <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解! 少了第一个DIV的内容 :<P>电池 x1&nbsp; 电源适配器 x1&nbsp; 说明书 x1 </P> 就是这一段话..
      

  10.   

    哦  我看错题了  我以为要第二个DIV呢              string input = @"<div class=""sbox_3"" id=""EFF_PINFO_Con_2"" style=""display: none;""> <P>电池 x1&nbsp; 电源适配器 x1&nbsp; 说明书 x1 </P> <div class=""State""> <strong>声明: </strong>因厂家会在没有任何提前通知的情况下更改产品包装、产地或者一些附件,本司不能确保客户收到的货物与商城图片、产地、附件说明完全一致。只能确保为原厂正货!并且保证与当时市场上同样主流新品一致。若本商城没有及时更新,请大家谅解! </div> </div>";
                string id = "EFF_PINFO_Con_2";
                string pattern = @"(?sin)(?<=<div[^<>]+id=""" + id + @"""[^<>]*>)(?<t1>((?!<div).)*)<div[^<>]*>(?<t2>((?!</div>).)*)";
                Match m = Regex.Match(input, pattern);
                Console.WriteLine(m.Groups["t1"].Value + m.Groups["t2"].Value);//得自己拼接