如何判断一个字符串是否为合法的IP地址。

如何判断一个字符串是否为合法的IP地址。

import java.util.Scanner;

public class MyTest {

	public static void main(String[] args) {
		/*
		 * 如何判断一个字符串是否为合法的IP地址。
		 */
		Scanner sc=new Scanner(System.in);
		String test=sc.nextLine();
		
		// ip地址最短7位最长15位
		if (test.length() < 7 || test.length() > 15) {
			System.out.println("不合法,长度不对");
		} else {
			String[] TheFigures = test.split("\\.");
			if (TheFigures.length!= 4) {
				
				System.out.println("不合法,不是4个串-------"+TheFigures.length);
			} else {
				//对每个字符串进行判断是否是规定的数字
				boolean flag=true;//定义一个标志位
				long sum=0;
				for(int i=0;i9) {
							flag=false;
							
							System.out.println("不合法,有非数字---ASCII值为"+ch+"字符是"+chr);
							break;
						}
					}
					sum=sum+Integer.parseInt(TheFigures[i]);
					if(flag) {
						int figInt=Integer.parseInt(TheFigures[i]);
						if(figInt<0  || figInt>255) {
							flag=false;
							break;
						}
					}
				}
				if(flag && sum!=0 ) {
					System.out.println("合法啦!");
				}else {
					System.out.println("不合法!");
				}
				
				
				
				
				
				
			}
		}

	}

}

你可能感兴趣的:(如何判断一个字符串是否为合法的IP地址。)