创建java正则表达式以获取href链接

创建java正则表达式以获取href链接,java,html,regex,href,inverse,Java,Html,Regex,Href,Inverse,对不起,如果以前有人问过这个问题,我在网上找不到任何答案。我很难弄清楚这个正则表达式的反方向: “\”[^>]*\“>” 我想使用replaceAll替换除链接之外的所有内容。如果我有一个类似的标签: 我需要一个正则表达式来满足以下条件: s、 replaceAll(regex,“”) 要给我这个输出: http://www.google.com 我知道有更好的方法,但我必须使用正则表达式。非常感谢您的帮助,谢谢 您不必使用replaceAll。更好地使用以下模式组: Pattern p =

对不起,如果以前有人问过这个问题,我在网上找不到任何答案。我很难弄清楚这个正则表达式的反方向:

“\”[^>]*\“>”

我想使用replaceAll替换除链接之外的所有内容。如果我有一个类似的标签:

我需要一个正则表达式来满足以下条件:

s、 replaceAll(regex,“”)

要给我这个输出:

http://www.google.com


我知道有更好的方法,但我必须使用正则表达式。非常感谢您的帮助,谢谢

您不必使用
replaceAll
。更好地使用以下模式组:

Pattern p = Pattern.compile("href=\"(.*?)\"");
Matcher m = p.matcher(html);
String url = null;
if (m.find()) {
    url = m.group(1); // this variable should contain the link URL
}

如果HTML中有多个链接,请在循环中执行
m.find()

如果字符串中始终有一个这样的链接,请尝试以下操作:

"(^[^\"]*\")|(\"[^\"]*)$"
您可以签出所有需要的正则表达式帮助。下面的一个是url:

^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$

按照目前的编写方式,regex不适用于国家代码为winchester.us、amazon.co.uk、amazon.ca等的站点。您完全正确。我的做法是错误的。而且,Java 6.0不适用,至少在replaceAll方法中不适用。@user1070866,那么这对我来说是最重要的。谢谢,我很难实现它,因为我已经在使用模式/匹配器查找以.htm和.html结尾的特定链接。非常有用!谢谢你,Alex。这是可行的,但是当href标记在链接之前有'id='时失败了。对不起,我应该在我的问题中加上这个。