【www.gdgbn.com--安卓教程】

// literally from the ABNF in rfc3986 (thanks to "WCP")
function validateIPv6($IP)
{
    return preg_match("/A
        (?:
            (?:
                    (?:[a-f0-9]{1,4}:){6}
                |
                    ::(?:[a-f0-9]{1,4}:){5}
                |
                    (?:[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){4}
                |
                    (?:(?:[a-f0-9]{1,4}:){0,1}[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){3}
                |
                    (?:(?:[a-f0-9]{1,4}:){0,2}[a-f0-9]{1,4})?::(?:[a-f0-9]{1,4}:){2}
                |
                    (?:(?:[a-f0-9]{1,4}:){0,3}[a-f0-9]{1,4})?::[a-f0-9]{1,4}:
                |
                    (?:(?:[a-f0-9]{1,4}:){0,4}[a-f0-9]{1,4})?::
            )
                (?:
                        [a-f0-9]{1,4}:[a-f0-9]{1,4}
                    |
                        (?:(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]).){3}
                            (?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])
                )
            |
                (?:
                        (?:(?:[a-f0-9]{1,4}:){0,5}[a-f0-9]{1,4})?::[a-f0-9]{1,4}
                    |
                        (?:(?:[a-f0-9]{1,4}:){0,6}[a-f0-9]{1,4})?::
                )
        )Z/ix",
        $IP
    );
}
?>

本文来源:http://www.gdgbn.com/shoujikaifa/22990/