/**
* ��������Ƿ�Ϊһ��Ϸ���IP��ַ �±����ֶ��������ַ����������IP�û� 0.* 127.* 255.255.255.255
* 224.*���ϵģ������鲥�����ַ��Ҳ��������IP�û���
* �ۺ�һ�£����ǣ�0.*��127.*�Լ���224��255��.*���������������ϵ�IP�û���
*
* @param {Object} ip
* @return true: �Ϸ���IP��ַ false: �Ƿ���IP��ַ
*/
public static boolean ipValid(String ip)
{
if (null == ip)
{
return false;
}
String regex = "^([1-9]|[1-9]\\d|1\\d{2}|2[0-1]\\d|22[0-3]).(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5]).(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5]).(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])$";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(ip);
boolean isIp = m.matches();
if (isIp)
{
String[] IPArray = StringUtils.splitPreserveAllTokens(ip,"\\.");
if (IPArray.length != 4)
{
return false;
}
int val = Integer.parseInt(IPArray[0]);
if (val == 127)
{
return false;
}
return true;
}
return false;
}