IPv4?
我的建议是先使用规则表达式:
([\d]{1,3}\.){3}[\d]{1,3}
先做初步判断,然后使用StringTokenizer提取每个每个数字,验证其范围。public class IPv4AdressVerifier {
    
    public static boolean verifyIPv4(String address) {
        if(!address.matches("([\\d]{1,3}\\.){3}[\\d]{1,3}"))
            return false;
        StringTokenizer stk = new StringTokenizer(address, ".");
        while(stk.hasMoreTokens()) {
            String t = stk.nextToken();
            try {
                if(Integer.parseInt(t) > 255)
                    return false;
            } catch(NumberFormatException e) {
                return false;
            }
        }
        return true;
    }    //Test
    public static void main(String[] args) {
        String s[] = {
            "192.168.0.1", "127.0.0.1", "211.50.250.24", 
            "211.52.524.50", "257.22.3.1", "211.52.215.", "211.55.215..",
            "0..01", "5.5.5.-1", "abcdefg", "Hollo World!"};
        
        for(int i = 0; i < s.length; i++) {
            System.out.println("[" + s[i] + "]: " + verifyIPv4(s[i]));
        }
    }
}