当前位置: 代码迷 >> ASP.NET >> 怎么用正则修改从网页中抓取的新闻标题
  详细解决方案

怎么用正则修改从网页中抓取的新闻标题

热度:740   发布时间:2013-02-25 00:00:00.0
如何用正则修改从网页中抓取的新闻标题?
HTML code
<li><a href="http://news.sina.com.cn/c/2012-03-15/080824118515_4.shtml" target="_blank">重庆日报刊登温家宝就王立军问题答问</a></li>                            <li><a href="http://news.sina.com.cn/c/2012-03-15/080824118515_2.shtml" target="_blank">重庆日报头版刊登温家宝答问</a></li>                            <li><a href="http://news.sina.com.cn/c/2012-03-15/075924118497.shtml" target="_blank">卫生部副部长呼吁政府增加对公立医院财政投入</a></li>                            <li><a href="http://news.sina.com.cn/c/2012-03-15/071124118406.shtml" target="_blank">调查显示北上广近四成居民看跌今年房价</a></li>


例如,以上是从网页中抓取的新闻信息。
现在我想实现,当标题超过15个字节时,多余的用...表示。

不知道是否可以用正则实现,求高中帮忙解决。

另,若该方法不行,在后台如何根据HTML标签对源码进行拆分呢?

------解决方案--------------------------------------------------------
C# code
    string html=@"<li><a href=""http://news.sina.com.cn/c/2012-03-15/080824118515_4.shtml"" target=""_blank"">重庆日报刊登温家宝就王立军问题答问</a></li>                            <li><a href=""http://news.sina.com.cn/c/2012-03-15/080824118515_2.shtml"" target=""_blank"">重庆日报头版刊登温家宝答问</a></li>                            <li><a href=""http://news.sina.com.cn/c/2012-03-15/075924118497.shtml"" target=""_blank"">卫生部副部长呼吁政府增加对公立医院财政投入</a></li>                            <li><a href=""http://news.sina.com.cn/c/2012-03-15/071124118406.shtml"" target=""_blank"">调查显示北上广近四成居民看跌今年房价</a></li>";                                        html=Regex.Replace(html,@"(?i)(?<=<a[^>]*?>).*?(?=</a>)",m=>m.Value.Length>15?m.Value.Substring(0,15)+"...":m.Value);    Console.WriteLine(html);