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()的区别
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/80351.html