Java Regex中matches()和find()的区别

陈欣 Java经验 发布时间:2023-08-16 14:12:02 阅读数:17783 1
下文笔者讲述Regex中matches()和find()的区别说明,如下所示
matches:
    将表达式与整个字符串进行匹配
          并在模式的开头隐式添加 ^ 并在模式的末尾添加 $

public static void main(String[] args) throws ParseException {
    Pattern p = Pattern.compile("\\d\\d\\d");
    Matcher m = p.matcher("a123b");
    System.out.println(m.find());
    System.out.println(m.matches());

    p = Pattern.compile("^\\d\\d\\d$");
    m = p.matcher("123");
    System.out.println(m.find());
    System.out.println(m.matches());
}

/* 
运行以上代码,将输出以下信息:
true
false
true
true
*/
123 是 a123b 的子字符串
      因此 find() 方法输出 true
matches() 仅“看到” a123b 与 123 不同
      因此输出 false
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202308/16921663467235.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者