java常见正则表达式用法

例1:

判断整个字符串是否只有大小写字母和数字

        String str = "ABCaaa123GG";String reg = "^[A-Za-z0-9]+$";Pattern pattern = Pattern.compile(reg);if (str != null) {Matcher matchera = pattern.matcher(str);if (matchera.matches()) {System.out.println("str符合全是字符和数字的规则");} else {System.out.println("str不符合全是字符和数字的规则");}}

输出:

str符合全是字符和数字的规则

其他正则规则可参考:Java常用正则表达式大全(史上最全的正则表达式-匹配中英文、字母和数字)

例2:

获取中间的数字

String str = "zxc#%fs1237895218m*jhg";
String reg = "(\\D*)(\\d+)(\\D*)";Pattern pattern = Pattern.compile(reg);
Matcher matcher = pattern.matcher(str);
if (matcher.find()) {System.out.println(matcher.group(1));System.out.println(matcher.group(2));System.out.println(matcher.group(3));
}else{System.out.println(" 没有匹配到内容....");
}

输出:

zxc#%fs
1237895218
m*jhg

例3:

获取“_”到“.”之间的字符串

String str = "fileNameCode-->_AD2467524284sd234.json";
String reg = "_(.*?)\\.";Pattern pattern = Pattern.compile(reg);
Matcher matcher = pattern.matcher(str);
if (matcher.find()) {System.out.println(matcher.group(1));
}else{System.out.println(" 没有匹配到内容....");
}

输出:

AD2467524284sd234

例4:

身份证号脱敏

String str = "420302199808190937";
String str1 = "(.{4})(.*)(.{3})";//只保留前4位和后三位String strNew = str.replaceAll(str1,"$1********$3");
System.out.println(strNew);

输出:

4203********937

例5

判断是否包含中文

String str = "123木头人";Pattern pattern = Pattern.compile("[\u4e00-\u9fa5]");
Matcher matcher = pattern.matcher(str);
boolean bo = false;
if (matcher.find()) {bo = true;System.out.println(bo + ",包括中文");
} else {System.out.println(bo + ",不包括中文");
}

输出:

true,包括中文

例6:

获取字符串中所有:到,之间的内容

String str = "1a:1242,5B:as32654,3j:4547,4d:456xas54,";
String reg = ":(.+?),";Pattern pattern = Pattern.compile(reg);
Matcher matcher = pattern.matcher(str);
List<String> list = new ArrayList<>();
while (matcher.find()){list.add(matcher.group(1));
}
System.out.println(list);

输出:

[1242, as32654, 4547, 456xas54]

参考文章:
Java正则表达式入门
Java 正则表达式
姓名,身份证号,银行卡号利用正则表达式实现数据脱敏工具类
JAVA正则表达式,matcher.find()和 matcher.matches()的区别

java常见正则表达式用法相关推荐

  1. java正则表达式用法示例_Java正则表达式教程及示例

    java正则表达式用法示例 当我开始使用Java时,正则表达式对我来说是一场噩梦. 本教程旨在帮助您掌握Java正则表达式,并让我定期返回以刷新我的正则表达式学习. 什么是正则表达式? 正则表达式定义 ...

  2. Java的几种常见接口用法

    2019独角兽企业重金招聘Python工程师标准>>> Java的几种常见接口用法 今天在看阎宏的< Java与模式>,里面对 java的 几种 接口的常用方法的总结: ...

  3. 【转】Java 枚举7常见种用法

    原文网址:http://softbeta.iteye.com/blog/1185573 Java 枚举7常见种用法 博客分类: java java枚举enmu  原创地址:http://blog.li ...

  4. java 正则表达式 反向_正则表达式中的数量表示符、反向引用、零宽断言、以及java中的用法...

    在表示数量时,如果一个正则表达式X,后面没有加表示数量的符号,那就默认出现一次.如果指定需要出现n次,那就用{n},例如a{n},就是匹配a出现n次的.a{n,}表示a出现至少n次的,而这个时候就会默 ...

  5. Java 中正则表达式的经典用法总结——捕获组

    正则表达式常用功能:匹配.切割.替换.获取(从字符串中提取指定格式字符) [String类下的正则的使用] String 类中有几个常用的方法,会涉及到正则表达式.如下: //根据正则表达式regex ...

  6. Java 枚举(enum) 7种常见的用法

    在JDK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是 ...

  7. Java 枚举(1): 详解7种常见的用法

    目录 用法一:常量 用法二:switch 用法三:向枚举中添加新方法 用法四:覆盖枚举的方法 用法五:实现接口 用法六:使用接口组织枚举 用法七:关于枚举集合的使用 JDK1.5引入了新的类型--枚举 ...

  8. java 正则表达式 table_JavaEdge/Java/Java中正则表达式.md at master · VegTableBird/JavaEdge · GitHub...

    主要用到的是这两个类 - java.util.regex.Pattern - java.util.regex.Matcher. Pattern对应正则表达式,一个Pattern与一个String对象关 ...

  9. java正则表达式语法(java正整数正则表达式)

    java正则表达式 ^ 和 $ 他们是分别用来匹配字符串的开始和结束,以下分别举例说明: "^The": 开头一定要有"The"字符串; "of de ...

最新文章

  1. php发布商品信息逻辑,php – 逻辑思考一个数据库结构:为用户发布的东西添加“标签” – 一个单独的表或……?...
  2. python使用openCV把原始彩色图像转化为灰度图、使用矩阵索引的方式对数据数据进行剪裁(image cropping)
  3. Microsoft office Communications server 2007部署
  4. FirefoxLinux下的网银离我们不远了
  5. SpringBoot-14-MyBatis预热篇,MySQL小结
  6. 对联想乐Pad的十大期待
  7. adbunknown Host service问题修复
  8. 3、以太网基础知识——ARP地址解析协议原理
  9. 用C++对C++语法格式进行分析
  10. jsp文件通常用common_29.jsp-动态生活之用Commons-FileUpload组件控制文件上传
  11. python3安装pymysql_Python3 MySQL 数据库连接 - PyMySQL 驱动
  12. urllib2设置代理
  13. 基于递归算法,树形结构数据下业务场景,封装解决方法
  14. win7系统启用与配置语音识别功能的操作方法
  15. unsigned int数相减时候的trick
  16. 第一章 计算机网络概述[知识点+课后习题+练习题]
  17. ②⓪②⓪ → ②⓪②①
  18. linux 命令的高级用法(chmod+find 批量授权)(转载)
  19. IGMC,Inductive graph-based matrix completion,基于归纳图的矩阵完成
  20. 揭秘!物联网卡代理的三大骗局

热门文章

  1. GitHub 开源神器 Bark模型,让文本转语音更简单
  2. PTA 背包问题凑零钱
  3. 深度模型的日志异常检测,还有谁不会?
  4. 融合多头注意力机制的网络恶意流量检测
  5. 整体费率三连降,海尔追“格”超“美”的下一步在哪?
  6. VS2013 如何创建应用程序图标
  7. Web 3.0 有哪些值得关注的项目
  8. 专业课课本复习(数电,通原,数信,信号与系统,数据结构)
  9. 15元钱一杯咖啡,喝完后两个空杯换一杯,问:你有100元钱,最多可以喝到几杯咖啡
  10. PEST分析顺丰服务需求_快递行业宏观环境PEST分析