java正则表达式(二)

二、方括号匹配

在上一节中,我们讲到了,利用通配符可以匹配任意元素,但是,我们在实际开发中,往往会只匹配指定的元素,如何来实现呢?

在正则表达式中,[]是对指定的元素进行匹配,只有在[]里的元素才能参与匹配。

注:[]只能匹配单个字符,也就是说,正则表达式“t[aeio]n”只匹配“tan”、“Ten”、“tin”和“ton”,但“Toon”不匹配。

见代码示例:

 1 public class RegExp {
 2     private Pattern patt;
 3     private Matcher matcher;
 4   /**
 5      * 方括号匹配:  只有方括号里面指定的字符才参与匹配。
 6      * 也就是说,正则表达式“t[aeio]n”只匹配“tan”、“Ten”、“tin”和“ton”。
 7      * 但“Toon”不匹配,因为在方括号之内只能匹配单个字符
 8      * @param regStr 匹配字符串
 9      * @param regex 正则表达式
10      * @return
11      */
12     public boolean squareReg(String regStr,String regex){
13         return this.commonRegExp(regStr, regex);
14     }
15   private boolean commonRegExp(String regStr,String regex){
16         boolean wildcard_Res=false;
17         patt=Pattern.compile(regex);
18         matcher=patt.matcher(regStr);
19         wildcard_Res= matcher.find();
20         return wildcard_Res;
21     }
22 }


1 public class TestRegExp {
2     public static void main(String[] args) {
3         RegExp re=new RegExp();
4         boolean wildcard_Res=false;
5      //[]号匹配
6         wildcard_Res=re.squareReg("ton", "t[aoe]n");
7      System.out.println(wildcard_Res);
8      //输出:wildcard_Res=true
9 }

 

  

 

 

 

posted on 2012-10-13 13:35  loritin  阅读(386)  评论(0编辑  收藏  举报

导航