欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java 判斷IP地址的合法性實(shí)例詳解

 更新時(shí)間:2017年05月25日 11:24:11   作者:huplion  
這篇文章主要介紹了Java 判斷IP地址的合法性實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下

Java 判斷IP地址的合法性

0.前言

有時(shí)候我們要對(duì)用戶輸入的IP地址進(jìn)行校驗(yàn),判斷這個(gè)IP地址是不是一個(gè)合法的IP地址。

1.實(shí)現(xiàn)思路

最簡(jiǎn)單的實(shí)現(xiàn)方法是構(gòu)造一個(gè)正則表達(dá)式。判斷用戶的輸入與正則表達(dá)式是否匹配。若匹配則是正確的IP地址,否則不是正確的IP地址。這里的難點(diǎn)是如何構(gòu)造出一個(gè)可用的正則表達(dá)式。

2.Java實(shí)現(xiàn)

/**
 * Created by HUPENG on 2016/9/26.
 */
public class Tool {
  /**
   * 判斷IP地址的合法性,這里采用了正則表達(dá)式的方法來(lái)判斷
   * return true,合法
   * */
  public static boolean ipCheck(String text) {
    if (text != null && !text.isEmpty()) {
      // 定義正則表達(dá)式
      String regex = "^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\."
           "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
           "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."
           "(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)$";
      // 判斷ip地址是否與正則表達(dá)式匹配
      if (text.matches(regex)) {
        // 返回判斷信息
        return true;
      } else {
        // 返回判斷信息
        return false;
      }
    }
    return false;
  }
}

3.調(diào)用的樣例

String b = JOptionPane.showInputDialog("請(qǐng)輸入邀請(qǐng)方IP地址:");
if (!Tool.ipCheck(b)){
  JOptionPane.showInternalMessageDialog(ChessController.this.getContentPane(),
    "IP地址格式錯(cuò)誤" ,"游戲提示", JOptionPane.INFORMATION_MESSAGE);
}

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • RabbitMQ消息隊(duì)列中多路復(fù)用Channel信道詳解

    RabbitMQ消息隊(duì)列中多路復(fù)用Channel信道詳解

    這篇文章主要介紹了RabbitMQ消息隊(duì)列中多路復(fù)用Channel信道詳解,消息Message是指在應(yīng)用間傳送的數(shù)據(jù),消息可以非常簡(jiǎn)單,比如只包含文本字符串,也可以更復(fù)雜,可能包含嵌入對(duì)象,需要的朋友可以參考下
    2023-08-08
  • Java讀取json數(shù)據(jù)并存入數(shù)據(jù)庫(kù)的操作代碼

    Java讀取json數(shù)據(jù)并存入數(shù)據(jù)庫(kù)的操作代碼

    很多朋友問(wèn)大佬們JAVA怎么把json存入數(shù)據(jù)庫(kù)啊,這一問(wèn)題就把我難倒了,糾結(jié)如何操作呢,下面小編把我的經(jīng)驗(yàn)分享給大家,感興趣的朋友一起看看吧
    2021-08-08
  • spring boot中使用@Async實(shí)現(xiàn)異步調(diào)用任務(wù)

    spring boot中使用@Async實(shí)現(xiàn)異步調(diào)用任務(wù)

    本篇文章主要介紹了spring boot中使用@Async實(shí)現(xiàn)異步調(diào)用任務(wù),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • Java中security與shiro的區(qū)別詳解

    Java中security與shiro的區(qū)別詳解

    這篇文章主要介紹了Java中security與shiro的區(qū)別詳解,Spring?Security在架構(gòu)上將認(rèn)證與授權(quán)分離,并提供了擴(kuò)展點(diǎn),它是一個(gè)輕量級(jí)的安全框架,它確保基于Spring的應(yīng)用程序提供身份驗(yàn)證和授權(quán)支持,需要的朋友可以參考下
    2023-08-08
  • mybatis的insert插入后獲取自增id的方法詳解(從controller到mapper)

    mybatis的insert插入后獲取自增id的方法詳解(從controller到mapper)

    這篇文章主要介紹了mybatis的insert插入后獲取自增id的示例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-10-10
  • java實(shí)現(xiàn)word文件轉(zhuǎn)html文件

    java實(shí)現(xiàn)word文件轉(zhuǎn)html文件

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)word文件轉(zhuǎn)html文件的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • IntelliJ?IDEA?2022.1.1?沒(méi)有CVS的過(guò)程分析

    IntelliJ?IDEA?2022.1.1?沒(méi)有CVS的過(guò)程分析

    這篇文章主要介紹了IntelliJ?IDEA?2022.1.1?沒(méi)有CVS的過(guò)程解析,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • Java基礎(chǔ)之Spring5的核心之一IOC容器

    Java基礎(chǔ)之Spring5的核心之一IOC容器

    這篇文章主要介紹了Java基礎(chǔ)之Spring5的核心之一IOC容器,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • 剖析Java中在Collection集合中使用contains和remove為什么要重寫(xiě)equals

    剖析Java中在Collection集合中使用contains和remove為什么要重寫(xiě)equals

    這篇文章主要介紹了Collection集合的contains和remove方法詳解remove以及相關(guān)的經(jīng)驗(yàn)技巧,通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • Lombok和MapStruct整合詳情

    Lombok和MapStruct整合詳情

    這篇文章主要介紹了Lombok和MapStruct整合詳情,文章基于Java的相關(guān)資料展開(kāi)詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-05-05

最新評(píng)論