如何解析IPV4和IPV6的数据库连接字符串

时间:2013-12-17 10:36:33

标签: java string url stringtokenizer

我试图解析一堆url.I尝试在java中使用URI类,但它不适合不同的字符串集。而且我还必须在IPV6上进行解析。输入字符串如下所示。

jdbc:postgresql:database
jdbc:postgresql://host/database
jdbc:postgresql://host:port/database
jdbc:postgresql://host:port/database?user=userName&password=pass
jdbc:postgresql://host:port/database?charSet=LATIN1&compatible=7.2

jdbc:postgresql://[::1]:5740/accounting (IPV6)

我想要主机名,端口和数据库名称。

指导我!

1 个答案:

答案 0 :(得分:1)

    String cleanURI = s.substring(5);
    URI uri = URI.create(cleanURI);
    System.out.println(uri.getScheme());
    System.out.println(uri.getHost());
    System.out.println(uri.getPort());
    System.out.println(uri.getPath());