当前位置:编程学习 > JAVA >>

java正则表达式学习

//        //System.out.println(s.getBytes().length);//一个汉字一个长度
//        if(s.matches("\\w[\\w\u4e00-\u9fa5]{1,6}"))
//            System.out.println("true");;
   
       
        /*
         *匹配
         */
//        //[abc] 匹配长度为1的字符串:a或b或c
//        System.out.println("abc".matches("[ab]"));//false
//        System.out.println("b".matches("[abc]"));//true
//        //比如验证qq号:长度为5-15的数字,首位不能是0 -----> [1-9][0-9]{4,14}
       
       
       
       
        /*
         *切割
         */
//        String s="zhangsan,lisi,wangwu";
//        for(String str:s.split(","))
//            System.out.println(str);
//       
//        s="zhangsan    lisi    wangwu";
//        for(String str:s.split(" +"))
//            System.out.println(str);
//       
//        s="zhangsan.lisi.wangwu";
//        for(String str:s.split("\\."))//此处注意
//            System.out.println(str);
//        zhangsan
//        lisi
//        wangwu

       
        //为了可以让规则的结果被重用可以将规则封装成一个组,用()完成,组的出现都有
        //编号,从1开始,0代表整个表达式,想要使用已有的组可以通过 \n(n就是组的编号)的形式来获取
//        s="abcccdeffggggj";
//        for(String str:s.split("(.)\\1+"))//+ 1次或多次
//            System.out.println(str);//注意以下有空行
////        ab
////        de
////
////        j
//        System.out.println(s.replaceAll("(.)\\1+",""));//abdej
//       
       
       
//        /*
//         *替换 replaceAll();replace()不支持正则表达式
//         */
//        String s="abcccdeffggggj";//将重叠的字符换成单个字母zzzz->z $1获取前面的第一组
//        System.out.println(s.replaceAll("(.)\\1+", "$1"));//abcdefgj
       
       
//       
//        /*
//         *获取 符合规则的的子串
//         *1.将正则表达式封装成对象 Pattern
//         *2.让正则对象和要操作的字符串相关联
//         *3.关联后,获取正则匹配引擎
//         *4.通过引擎对符合规则的子串进行操作,比如取出
//         *
//         *String中的一些方法就是封装好上面的,但是功能较为单一
//         */
//        String s="hello ni hao piao liangabc";
//        String reg="[a-z]{3}";
//        Pattern pattern=Pattern.compile(reg);//封装成对象
//        Matcher match=pattern.matcher(s);//关联
//       
//        match.find();//boolean 相当于迭代器
//        System.out.println(match.group());//获取匹配后的结果 hel
//       
//        while(match.find()){
//            System.out.println(match.group());
//            //match.start();
//            //match.end();
//        }
////        hao
////        pia
////        lia
////        nga


摘自  aijuans
补充:软件开发 , Java ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,