111,129
社区成员
发帖
与我相关
我的任务
分享<div class="MIB">
<p class="sms2" mid="2011" type="1">大象与小猫!</p>
<div class="feed" id="prev">
<div class="feed1"><a onclick="Img(this,'67cee');" href="javascript:;">
<img dy="http://mg.cn/我的图片" class="imgicon"/></a>
</div>
<img dy="http://mg.cn/bmid83e&90" class="PY_tr"/>
<div class="clear1"></div>
</div>
<div class="Msign" id="dis80216206434" style="display:none;" >
</div>
<div class="feextbl">
<div class="tc3"><strong >9月8日 20:36</strong>
<strong lang="CL6">come</strong><cite><a href="http://ne44a.com.cn/wient.html#3" target="_blank">
custom</a></cite></div>
<div class="r"><a href="javascript:void(0);" onclick="Login('login','CY04127');">
<strong lang="CD0023">44</strong></a>
<span class="MIB_line_l">|</span>
</div>
</div>
<div id="_comment_list_miniblog2_20110080216206434"></div>
</div>
有以上一段字符串,求一个正则,要在以上的内容中同时得到以下三个值,
得到p标签,class="sms2" 的值;大象与小猫!
得到img标签,class="imgicon"结尾的值;http://mg.cn/我的图片
得到class="tc3"的div和strong标签中间的值:9月8日 20:36 private static void TestRegex14()
{
string html = @"<div class=""MIB"">
<p class=""sms2"" mid=""2011"" type=""1"">大象与小猫!</p>
<div class=""feed"" id=""prev"">
<div class=""feed1""><a onclick=""Img(this,'67cee');"" href=""javascript:;"">
<img dy=""http://mg.cn/我的图片"" class=""imgicon""/></a>
</div>
<img dy=""http://mg.cn/bmid83e&90"" class=""PY_tr""/>
<div class=""clear1""></div>
</div>
<div class=""Msign"" id=""dis80216206434"" style=""display:none;"" >
</div>
<div class=""feextbl"">
<div class=""tc3""><strong >9月8日 20:36</strong>
<strong lang=""CL6"">come</strong><cite><a href=""http://ne44a.com.cn/wient.html#3"" target=""_blank"">
custom</a></cite></div>
<div class=""r""><a href=""javascript:void(0);"" onclick=""Login('login','CY04127');"">
<strong lang=""CD0023"">44</strong></a>
<span class=""MIB_line_l"">|</span>
</div>
</div>
<div id=""_comment_list_miniblog2_20110080216206434""></div>
</div>
";
Match m = Regex.Match(html, @"(?is)<p[^>]*class=""sms2""[^>]*>(?<p>.+?)</p>.+?<img(?=[^>]*?class=""imgicon"")[^>]*?dy=""(?<img>[^""]+).+?class=""tc3"">(?:<[^>]+>)*(?<div>[^<>]+)");
Console.WriteLine(m.Groups["p"].Value);
Console.WriteLine(m.Groups["img"].Value);
Console.WriteLine(m.Groups["div"].Value);
}