public URLNormalizer replaceIPWithDomainName() {
        URL u = toURL();
        if (!PATTERN_DOMAIN.matcher(u.getHost()).matches()) {
            try {
                InetAddress addr = InetAddress.getByName(u.getHost());
                String host = addr.getHostName();
                if (!u.getHost().equalsIgnoreCase(host)) {
                    url = url.replaceFirst(u.getHost(), host);
                }
            } catch (UnknownHostException e) {
                logger.debug("Cannot resolve IP to host for :" + u.getHost(), e);
            }
        }
        return this;
    }
@Test
    public void testReplaceIPWithDomainName() {
        s = "http://208.80.154.224/wiki/Main_Page";
        t = null;
//        System.out.println("Result: " + n(s).replaceIPWithDomainName().toString());
        Assert.assertTrue(
                n(s).replaceIPWithDomainName().toString().contains("wikimedia"));
        s = "http://wikipedia.org/wiki/Main_Page";
        t = "http://wikipedia.org/wiki/Main_Page";
        assertEquals(t, n(s).replaceIPWithDomainName().toString());
        s = "http://200.200.200.200/nohost.html";
        t = "http://200.200.200.200/nohost.html";
        assertEquals(t, n(s).replaceIPWithDomainName().toString());
    }