java 正则

简单示例:

String str = "111";
String pattern = "^[0-9]*$";

Pattern r = Pattern.compile(pattern);
Matcher m = r.matcher(str);
System.out.println(m.matches());

 

复杂点的示例:

复制代码
String a_text = "10. mysql json 使用 类型 查询 函数(54165)";
Pattern pattern = Pattern.compile("^\\d+\\.\\s.+\\(\\d+\\)$");// 匹配  1. js 判断字符串中是否包含某个字符串(633291)
Matcher matcher = pattern.matcher(a_text);
if (matcher.find()) {
String text = matcher.group();
System.out.println(text);
int title_start = 0, title_end = 0;

Pattern pattern2 = Pattern.compile("^\\d+\\.\\s");// 匹配  1.
Matcher matcher2 = pattern2.matcher(a_text);
if (matcher2.find()) {
    int start = matcher2.start();
    int end = matcher2.end();
    title_start = end;
    String top = a_text.substring(start, end - 2);
    System.out.println(top);
}

Pattern pattern3 = Pattern.compile("\\(\\d+\\)$");// 匹配  633291)
Matcher matcher3 = pattern3.matcher(a_text);
if (matcher3.find()) {
    int start = matcher3.start();
    int end = matcher3.end();
    title_end = start;
    String read_count = a_text.substring(start + 1, end - 1);
    System.out.println(read_count);
}

String title = a_text.substring(title_start, title_end);
System.out.println(title);
复制代码

 

捕获组示例:

复制代码
String a_text = "10. mysql json 使用 类型 查询 函数(54165)";
Pattern pattern = Pattern.compile("(^\\d+)\\.\\s(.+)\\((\\d+)\\)$");
Matcher matcher = pattern.matcher(a_text);
if (matcher.find()) {
    System.out.println("Found value: " + matcher.group(0) );//Found value: 10. mysql json 使用 类型 查询 函数(54170)
    System.out.println("Found value: " + matcher.group(1) );//Found value: 10
    System.out.println("Found value: " + matcher.group(2) );//Found value: mysql json 使用 类型 查询 函数
    System.out.println("Found value: " + matcher.group(3) );//Found value: 54170
}
复制代码

 

 

正则表达式-教程:https://www.runoob.com/regexp/regexp-tutorial.html

java正则表达式-教程:https://www.runoob.com/java/java-regular-expressions.html

正则表达式在线测试:https://c.runoob.com/front-end/854

 

posted @   草木物语  阅读(294)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2016-12-13 清除浮动
2016-12-13 占位和不占位隐藏元素
点击右上角即可分享
微信分享提示