【Java】正则表达式( Pattern 和 Matcher 类)

快速入门

Java 提供了 java.util.regex 包,它包含了 Pattern 和 Matcher 类,用于处理正则表达式的匹配操作。

java.util.regex 包主要包括以下三个类:

  • Pattern 类:

    pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。创建一个 Pattern 对象需要调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。

  • Matcher 类:

    Matcher 对象是对输入字符串进行解释和匹配操作的引擎。Matcher 也没有公共构造方法。需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。

  • PatternSyntaxException:

    PatternSyntaxException 是一个非强制异常类,它表示一个正则表达式模式中的语法错误。

java 复制代码
import java.util.regex.*;
 
class RegexExample1{
   public static void main(String[] args){
      String content = "I am noob " +
        "from runoob.com.";
 
      String pattern = ".*runoob.*";
 
      boolean isMatch = Pattern.matches(pattern, content);
      System.out.println("字符串中是否包含了 'runoob' 子字符串? " + isMatch);
      // 字符串中是否包含了 'runoob' 子字符串? true
   }
}
java 复制代码
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
public class RegexMatches
{
    public static void main( String[] args ){
 
      // 按指定模式在字符串查找
      String line = "This order was placed for QT3000! OK?";
      String pattern = "(\\D*)(\\d+)(.*)";
 
      // 创建 Pattern 对象
      Pattern r = Pattern.compile(pattern);
 
      // 现在创建 matcher 对象
      Matcher m = r.matcher(line);
      if (m.find( )) {
         System.out.println("MATCH");
      } else {
         System.out.println("NO MATCH");
      }
   }
}

Matcher 类的方法



相关推荐
q行几秒前
java学习日志--内部类
java·学习·内部类
资生算法程序员_畅想家_剑魔1 分钟前
Java常见技术分享-21-多线程安全-进阶模块-并发集合与线程池-ForkJoinPool
java·开发语言
a努力。2 分钟前
哈罗骑行Java面试被问:Redis的持久化策略对比
java·redis·面试
Cx330❀2 分钟前
《C++ 递归、搜索与回溯》第1题:汉诺塔问题
开发语言·c++·算法·面试·回归算法
superman超哥4 分钟前
Rust Profile-Guided Optimization(PGO):数据驱动的极致性能优化
开发语言·后端·性能优化·rust·数据驱动·pgo
杰瑞不懂代码5 分钟前
结合os模块和shutil模块实现本地文件自动化操作
android·java·自动化·办公自动化·shutil·os
草莓熊Lotso7 分钟前
Qt 入门核心指南:从框架认知到环境搭建 + Qt Creator 实战
xml·开发语言·网络·c++·人工智能·qt·页面
微爱帮监所写信寄信7 分钟前
微爱帮监狱寄信邮票真伪核实接口认证方案
开发语言·python
啃火龙果的兔子9 分钟前
如何使用python开发小游戏
开发语言·python·pygame
superman超哥9 分钟前
Rust 内存对齐与缓存友好设计:性能优化的微观艺术
开发语言·后端·性能优化·rust·内存对齐·缓存优化设计·微观艺术