Java:我有一大串html,需要提取href =“…”文本
发布时间:2020-12-15 02:53:29 所属栏目:Java 来源:网络整理
导读:我有这个字符串包含一大块html,我试图从字符串的href =“…”部分提取链接. href可以采用以下形式之一: a href="..." /a class="..." href="..." / 我没有真正的正则表达式的问题,但出于某种原因我使用以下代码: String innerHTML = getHTML(); Pattern p
我有这个字符串包含一大块html,我试图从字符串的href =“…”部分提取链接. href可以采用以下形式之一:
<a href="..." /> <a class="..." href="..." /> 我没有真正的正则表达式的问题,但出于某种原因我使用以下代码: String innerHTML = getHTML(); Pattern p = Pattern.compile("href="(.*)"",Pattern.DOTALL); Matcher m = p.matcher(innerHTML); if (m.find()) { // Get all groups for this match for (int i=0; i<=m.groupCount(); i++) { String groupStr = m.group(i); System.out.println(groupStr); } } 有人能告诉我我的代码有什么问题吗?我在PHP中做了这些东西,但在Java中,我在某种程度上做错了什么…发生的事情是,每当我尝试打印它时,它会打印整个html字符串… 编辑:这样每个人都知道我正在处理什么样的字符串: <a class="Wrap" href="item.php?id=43241"><input type="button"> <span class="chevron"></span> </a> <div class="menu"></div> 每次我运行代码时,它会打印整个字符串……这就是问题所在…… 关于使用jTidy ……我正在使用它,但知道在这种情况下出了什么问题会很有趣…… 解决方法.* 这是一个贪婪的操作,它将包含任何字符,包括引号. 尝试类似的东西: "href="([^"]*)"" (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |