首页 > 基础教程 > 正则表达式 > Pattern类
Java Pattern.matcher()匹配字符串或者返回Matcher实例
Pattern.matcher()一个方法是对整个字符串进行匹配,只有整个字符串都匹配了才返回true;一个方法是返回一个Matcher实例。
方法
Pattern.matcher(String regex,CharSequence input)
此方法是一个静态方法,用于快速匹配字符串,该方法适合用于只匹配一次,且匹配全部字符串.实例代码如下:
Pattern.matches(“\\d+”,”2223″);//返回true
Pattern.matches(“\\d+”,”2223aa”);//返回false,需要匹配到所有字符串才能返回true,这里aa不能匹配到
Pattern.matches(“\\d+”,”22bb23″);//返回false,需要匹配到所有字符串才能返回true,这里bb不能匹配到
Pattern.matcher(CharSequence input)
此方法返回一个Matcher对象。Matcher类的构造方法也是私有的,不能随意创建,只能通过Pattern.matcher(CharSequence input)方法得到该类的实例,实例代码如下:
Pattern p=Pattern.compile(“\\d+”);
Matcher m=p.matcher(“22bb23”);
m.pattern();//返回p 也就是返回该Matcher对象是由哪个Pattern对象的创建的
例子
Pattern p=Pattern.compile(“([a-z]+)(\\d+)”);
Matcher m=p.matcher(“aaa2223bb”);
m.find(); //匹配aaa2223
m.groupCount(); //返回2,因为有2组
m.start(1); //返回0 返回第一组匹配到的子字符串在字符串中的索引号
m.start(2); //返回3
m.end(1); //返回3 返回第一组匹配到的子字符串的最后一个字符在字符串中的索引位置.
m.end(2); //返回7
m.group(1); //返回aaa,返回第一组匹配到的子字符串
m.group(2); //返回2223,返回第二组匹配到的子字符串
总结
1. Pattern类只能做一些简单的匹配操作,要想得到更强更便捷的正则匹配操作,那就需要将Pattern与Matcher一起合作.Matcher类提供了对正则表达式的分组支持,以及对正则表达式的多次匹配支持。
2. Pattern.matcher(String regex,CharSequence input),它与下面这段代码等价 Pattern.compile(regex).matcher(input).matches()
版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。
今天的文章java 返回匹配的字符串_Java Pattern.matcher()匹配字符串或者返回Matcher实例分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/33259.html