java模式匹配问题

java模式匹配问题,java,regex,string,Java,Regex,String,我有一个问题要写合适的正则表达式来匹配URL String input = "AAAhttp://www.gmail.comBBBBabc@gmail.com" String regex = "www.*.com" // To match www.gmail.com URL Pattern p = Pattern.compile(regex) Matcher m = p.matcher(input) while(m.find()){ } 在这里,我想删除Urlwww

我有一个问题要写合适的正则表达式来匹配URL

String input = "AAAhttp://www.gmail.comBBBBabc@gmail.com"    
String regex = "www.*.com"  // To match www.gmail.com URL    
Pattern p = Pattern.compile(regex)
Matcher m = p.matcher(input)
while(m.find()){

}    
在这里,我想删除Url
www.gmail.com
。然而,它匹配到字符串的末尾,以匹配电子邮件地址,电子邮件地址也以
gmail.com
结尾。
有人能帮我找到只匹配URL的正则表达式吗

*
进行贪婪匹配。您必须在
*
之后添加
,以进行不情愿的匹配

"www\\..*?\\.com"
你的代码是

    String s = "AAAhttp://www.gmail.comBBBBabc@gmail.com";
    Pattern p = Pattern.compile("www\\..*?\\.com");
    Matcher m = p.matcher(s);
    while (m.find()) {
      System.out.println(m.group(0));
    }


非贪婪地重复通配符“.”和转义点,当取反字符类的速度比
*?

使用此正则表达式:

www\.[^.]+\.com
[^.]+
表示任何不是点的字符

在Java中,我们需要转义一些字符:

// for instance
Pattern regex = Pattern.compile("www\\.[^.]+\\.com");
// etc
这里我想删除Url
www.gmail.com
你确定还是要提取????
// for instance
Pattern regex = Pattern.compile("www\\.[^.]+\\.com");
// etc