正则表达式匹配超链接

zhqyzhqychn 2010-04-05 10:37:20
想把下载的网页中的所有超链接全部删除,例如hi<a href="www.baidu.com">baidu</a>world
最后只剩hiworld
想这么用 (c++的正则库,但是在那个板块问没人回答,在这里问问(*^__^*))

regex linkexp("<a.*?>.*?</a>");
string body = regex_replace(inbody,linkexp," ");


regex linkexp("<a\\s*?>.*?</a>");

上面两个都试过,对于一些网页可以,但是有些网页就会报错,c++抛出异常,上网查询说是正则表达式有歧义导致,匹配产生NP完全问题才会停止的,不知道该怎么修改,查了很多资料都找不到原因
...全文
419 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhqyzhqychn 2010-04-07
  • 打赏
  • 举报
回复
二楼和三楼都可以,谢谢了
thy38 2010-04-06
  • 打赏
  • 举报
回复
把报错的那个网页的HTML代码贴点给我们测试一下
friendly_ 2010-04-05
  • 打赏
  • 举报
回复
试试这个"<a[^>]+>[^>]*?</a>"
fibbery 2010-04-05
  • 打赏
  • 举报
回复
试一试:regex linkexp("<a\s+href.*?a>");

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧