100个Java工具类之26:Java正则表达式工具类

内容分享1天前发布
0 4 0

本文主要讲述:Java正则表达式工具类

正则表达式是一种字符串处理工具,根据语法规则匹配,可以用来验证、检索字符串。

100个Java工具类之26:Java正则表达式工具类

一、是否全小写

boolean flag1 = Pattern.matches("^[a-z]+$", "ABC");
输出:false

二、是否全中文

boolean flag3 = Pattern.matches("^[u4E00-u9FA5]+$", "张三");
输出:true

三、验证整数范围是否在18以内

boolean flag4 = Pattern.matches("^[3-9]|(1[0-8])$", "17");
输出:true

四、验证是否是包含大小写和数字并且长度大于等于6

boolean flag5 = Pattern.matches("^([A-Za-z0-9])[a-zA-Z0-9\W]{6,}$", "Qq12345");
输出:true

100个Java工具类之26:Java正则表达式工具类

五、获取字符串中的纯数字

String str6 = "ABC哈哈123".replaceAll("[^0-9]","");
输出:123

六、判断是否是正确格式的IP

boolean flag7 = Pattern.matches("^(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)$", "192.168.4.433");
输出:false

七、是否是两位小数

boolean flag8 = Pattern.matches("^(([1-9]{1}\d*)|([0]{1}))(\.(\d){0,2})?$", "123.123");
输出:false

100个Java工具类之26:Java正则表达式工具类

八、是否包含特殊字符

boolean flag9 = "123&".replaceAll("[a-z]*[A-Z]*\d*-*_*\s*", "").length() == 0 ? false : true;
输出:true

说实话,这个正则表达式真是生涩难懂,但也真是嘎嘎好用,是否使用看个人喜好吧。

喜爱的话给个赞吧~

100个Java工具类之26:Java正则表达式工具类

#头条创作挑战赛##挑战30天在头条写日记##java##程序员#

© 版权声明

相关文章

4 条评论

  • 头像
    哥哥毛豆豆 投稿者

    获取数字,用D替换不就行了

    无记录
    回复
  • 头像
    唯望樊安 投稿者

    自己手撸正则就是效率太慢了

    无记录
    回复
  • 头像
    病_理诊断 投稿者

    代码都是原样,算哪门子工具类?真是敷衍

    无记录
    回复
  • 头像
    游戏那些破事儿 投稿者

    收藏了,感谢分享

    无记录
    回复