最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

常用java正則表達式的工具類

 更新時間:2018年01月30日 16:01:26   作者:小甜瓜安東泥  
這篇文章主要為大家詳細介紹了常用java正則表達式的工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java正則表達式工具類的具體代碼,供大家參考,具體內(nèi)容如下

import com.google.common.base.Strings;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 常用的正則表達式
 * Created by tookbra on 2016/4/7.
 */
public class RegexUtils {
  /**
   * 判斷是否是正確的IP地址
   *
   * @param ip
   * @return boolean true,通過,false,沒通過
   */
  public static boolean isIp(String ip) {
    if (Strings.isNullOrEmpty(ip))
      return false;
    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)$";
    return ip.matches(regex);
  }
  /**
   * 判斷是否是正確的郵箱地址
   *
   * @param email
   * @return boolean true,通過,false,沒通過
   */
  public static boolean isEmail(String email) {
    if (Strings.isNullOrEmpty(email))
      return false;
    String regex = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
    return email.matches(regex);
  }
  /**
   * 判斷是否含有中文,僅適合中國漢字,不包括標點
   * @param text
   * @return boolean true,通過,false,沒通過
   */
  public static boolean isChinese(String text) {
    if (Strings.isNullOrEmpty(text))
      return false;
    Pattern p = Pattern.compile("[\u4e00-\u9fa5]");
    Matcher m = p.matcher(text);
    return m.find();
  }
  /**
   * 判斷是否正整數(shù)
   *
   * @param number
   *      數(shù)字
   * @return boolean true,通過,false,沒通過
   */
  public static boolean isNumber(String number) {
    if (Strings.isNullOrEmpty(number))
      return false;
    String regex = "[0-9]*";
    return number.matches(regex);
  }
  /**
   * 判斷幾位小數(shù)(正數(shù))
   *
   * @param decimal
   *      數(shù)字
   * @param count
   *      小數(shù)位數(shù)
   * @return boolean true,通過,false,沒通過
   */
  public static boolean isDecimal(String decimal, int count) {
    if (Strings.isNullOrEmpty(decimal))
      return false;
    String regex = "^(-)?(([1-9]{1}\\d*)|([0]{1}))(\\.(\\d){" + count
        + "})?$";
    return decimal.matches(regex);
  }
  /**
   * 判斷是否是移動手機號碼
   *
   * @param phoneNumber
   *      移動手機號碼
   * @return boolean true,通過,false,沒通過
   */
  public static boolean isMobilePhoneNumber(String phoneNumber) {
    if (Strings.isNullOrEmpty(phoneNumber))
      return false;
    String regex = "^((13[0-9])|(15[0-9])|(18[1-9]))\\d{8}$";
    return phoneNumber.matches(regex);
  }

  /**
   * 判斷是否是手機號碼
   *
   * @param phoneNumber
   *      移動手機號碼
   * @return boolean true,通過,false,沒通過
   */
  public static boolean isPhoneNumber(String phoneNumber) {
    if (Strings.isNullOrEmpty(phoneNumber))
      return false;
    String regex = "^1\\d{10}$";
    return phoneNumber.matches(regex);
  }
  /**
   * 判斷是否含有特殊字符
   *
   * @param text
   * @return boolean true,通過,false,沒通過
   */
  public static boolean hasSpecialChar(String text) {
    if (Strings.isNullOrEmpty(text))
      return false;
    if (text.replaceAll("[a-z]*[A-Z]*\\d*-*_*\\s*", "").length() == 0) {
      // 如果不包含特殊字符
      return true;
    }
    return false;
  }

  private static boolean isChinese(char c) {
    Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
    if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
        || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
        || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
        || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B
        || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
        || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS
        || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION) {
      return true;
    }
    return false;
  }
}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java微信公眾號開發(fā)之通過微信公眾號獲取用戶信息

    Java微信公眾號開發(fā)之通過微信公眾號獲取用戶信息

    這篇文章主要介紹了Java微信公眾號開發(fā)之通過微信公眾號獲取用戶信息,需要的朋友可以參考下
    2017-05-05
  • 詳解Spring Boot 集成Shiro和CAS

    詳解Spring Boot 集成Shiro和CAS

    這篇文章主要介紹了詳解Spring Boot 集成Shiro和CAS,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Java并發(fā)編程之threadLocal

    Java并發(fā)編程之threadLocal

    ThreadLocal是JDK包提供的,它提供了線程本地變量,也就是說如果創(chuàng)建了一個ThreadLocal變量,需要的朋友可以參考一下喲
    2021-09-09
  • Java設(shè)計模式中的代理設(shè)計模式詳細解析

    Java設(shè)計模式中的代理設(shè)計模式詳細解析

    這篇文章主要介紹了Java設(shè)計模式中的代理設(shè)計模式詳細解析,代理模式,重要的在于代理二字,何為代理,我們可以聯(lián)想到生活中的例子,比如秘書、中介這類職業(yè),我們可以委托中介去幫我們完成某些事情,而我們自己只需要關(guān)注我們必須完成的事情,需要的朋友可以參考下
    2023-12-12
  • Java使用Callable和Future創(chuàng)建線程操作示例

    Java使用Callable和Future創(chuàng)建線程操作示例

    這篇文章主要介紹了Java使用Callable和Future創(chuàng)建線程操作,結(jié)合實例形式分析了java使用Callable接口和Future類創(chuàng)建線程的相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2019-09-09
  • Maven中利用assembly插件打包jar包

    Maven中利用assembly插件打包jar包

    本文詳細講解了Maven中利用assembly插件打包jar包的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • SpringMVC4.3?HttpMessageConverter接口實現(xiàn)源碼分析

    SpringMVC4.3?HttpMessageConverter接口實現(xiàn)源碼分析

    這篇文章主要為大家介紹了SpringMVC4.3?HttpMessageConverter接口實現(xiàn)源碼分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • 詳解如何解析pom文件方法示例

    詳解如何解析pom文件方法示例

    這篇文章主要為大家介紹了詳解如何解析pom文件方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • Jpa數(shù)據(jù)操作以及@Query和@Modifying注解使用方式

    Jpa數(shù)據(jù)操作以及@Query和@Modifying注解使用方式

    這篇文章主要介紹了Jpa數(shù)據(jù)操作以及@Query和@Modifying注解使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java之獲取客戶端真實IP地址的實現(xiàn)

    Java之獲取客戶端真實IP地址的實現(xiàn)

    在開發(fā)工作中,我們常常需要獲取客戶端的IP,本文主要介紹了Jav之獲取客戶端真實IP地址的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2023-12-12

最新評論

托克逊县| 乐至县| 安康市| 台安县| 神农架林区| 夏邑县| 香港| 西藏| 简阳市| 皋兰县| 昂仁县| 嘉义县| 绍兴市| 长子县| 田阳县| 南漳县| 仙桃市| 都匀市| 新邵县| 益阳市| 诏安县| 神农架林区| 南川市| 金乡县| 永川市| 黔西| 简阳市| 石狮市| 樟树市| 保定市| 达州市| 饶平县| 长岛县| 新巴尔虎左旗| 赤壁市| 凤阳县| 曲松县| 玉环县| 宿松县| 茂名市| 疏勒县|