Pattern和Matcher具体的用法
Pattern是一个正则表达式经编译后的表现模式。Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。
首先一个Pattern实例订制了一个所用语法与PERL的类似的正则表达式经编译后的模式,然后一个Matcher实例在这个给定的Pattern实例的模式控制下进行字符串的匹配工作。
判断字符串是否匹配这个正则表达式,第一个参数是正则表达式,第二个参数是字符串。
Matcher类的使用 Matcher类的构造方法也是private的所以也是通过调用方法来创建的。
Matcher.matches()/ Matcher.lookingAt()/ Matcher.find() Matcher.matches()是必须全部匹配; Matcher.lookingAt()匹配的字符必须要在字符串的最前面 Matcher.find()匹配的字符可以在字符串的任意的地方。
Mathcer.start()/ Matcher.end()/ Matcher.group() 这三个方法必须是在有字符匹配到的条件下才能够调用,否则会报错。 start()返回匹配到的子字符串在字符串中的索引位置. end()返回匹配到的子字符串的最后一个字符在字符串中的索引位置. group()返回匹配到的子字符串。
tart(),end(),group()均有一个重载方法它们是start(int i),end(int i),group(int i)专用于分组操作,Mathcer类还有一个groupCount()用于返回有多少组。
Matcher m = p.matcher("aaaaab"); 这个是被测试的内容
看这个你就明白了.
//判断是否是数字.你可以填写其它的规则;
Pattern p = Pattern.compile("\\d+"); //需要要判断的字符串; Matcher m = p.matcher("1234532323"); if(m.matches()) { System.out.println("正确,是由数字组成的"); }else { System.out.println("错误,不是由数字组成的"); }