判断字符串是否是合法的IP地址,怎样判断ip地址的类型

  判断字符串是否是合法的IP地址,怎样判断ip地址的类型

  如何解决写爬虫IP受阻的问题?立即使用。

  要实现这个算法,首先要知道IP地址应该基于什么条件:

  (推荐教程:java入门)

  判断原则:

  确定字符长度是否在7到15位数之间(0.0.0-255.255.255.255.255.255)

  可以用小数点分成四段吗?

  每一段都是数字吗?

  每个段号是否在0到255之间?

  只有满足以上四个条件,才是IP的正确格式。

  实现这种算法有两种简单的方法,一种是常规判断,另一种是正则表达式判断。下面两种方法是以函数的形式实现的,可以直接复制使用。输入参数是要判断的字符串,以及返回的布尔变量。

  (视频教程推荐:java视频教程)

  常规方法判断

  //确定字符是否是IP

  public boolean is correct IP(String IP String){

  //1,判断是否在7-15位数之间(0.0.0-255.255.255.255.255)

  if(IP string . length()7 IP string . length()15){

  返回false

  }

  //2.确定是否可以用小数点分成四段。

  string[]IP array=ipstring . split( \ \ . ));

  if(iparay . length!=4) {

  返回false

  }

  for(int I=0;i ipArray.lengthi ) {

  //3.确定每个段落是否是数字。

  尝试{

  int number=integer . parse int(IP array[I]);

  //4.确定每段数字是否在0到255之间。

  if (number 0number255) {

  返回false

  }

  } catch(异常e) {

  返回false

  }

  }

  返回true

  }正则表达式方法判断

  //使用正则表达式判断字符是否为IP

  public boolean is correct IP 2(String IP String){

  String ipRegex=\\d{1,3}\\。\\d{1,3}\\。\\d{1,3}\\。\\d{1,3 } ;//IP地址的正则表达式

  //如果前三个判断都满足,判断每个数字是否在0到255之间。

  if (ipString.matches(ipRegex)) {

  string[]IP array=ipstring . split( \ \ . ));

  for(int I=0;i ipArray.lengthi ) {

  int number=integer . parse int(IP array[I]);

  //4.确定每段数字是否在0到255之间。

  if (number 0number255) {

  返回false

  }

  }

  返回true

  }

  否则{

  返回false//如果不匹配正则表达式,则返回false

  }

  }测试结果:

  这就是java如何判断一个字符串是否是IP地址的细节。请多关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: