-4

可能重复:
正则表达式匹配 URL

给定一个字符串,我想知道它是否代表一个 URL 并获取网站名称,即“随便”。例如,给定“ http://google.com.sg ”或“ http://google.com.sg/ ”,我想返回字符串“google.com.sg”。

在Java中有一种巧妙的方法吗?

4

2 回答 2

5

有很多方法可以做到这一点,但简单的正则表达式很容易出错。最好的办法是将其提供给现有的解析器,然后使用方法提取您需要的位,例如

import java.net.URL;
...
final URL url = new URL("http://google.com.sg/");
final String host = url.getHost();
于 2013-01-30T21:11:22.480 回答
0

如果你确实想要一个正则表达式,这里有一个:

    String foo = "http://google.com";
    String bar = foo.replaceAll("^http://", "");

    if (bar.length() != foo.length()) {
        System.out.println("Url: " + bar);
    } else {
        System.out.println("Not Url: " + foo);
    }
于 2013-01-30T21:14:47.600 回答