A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 499827204 初级黑马   /  2016-4-19 11:01  /  457 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

正则表达式
          是指一个用来描述或者匹配一系列符合某个语法规则的字符串的单个字符串。其实就是一种规则。有自己特殊的应用。
          作用:比如注册邮箱,邮箱有用户名和密码,一般会对其限制长度,这个限制长度的事情就是正则表达式做的
  
        字符类
          [abc] a、b 或 c(简单类)
          [^abc] 任何字符,除了 a、b 或 c(否定)
          [a-zA-Z] a到 z 或 A到 Z,两头的字母包括在内(范围)
          [0-9] 0到9的字符都包括
        预定义字符类
          . 任何字符。
          \d 数字:[0-9]
          \w 单词字符:[a-zA-Z_0-9]
        数量词
          X? X,一次或一次也没有
          X  X,零次或多次
          X+ X,一次或多次
          X{n} X,恰好 n 次
          X{n,} X,至少 n 次
          X{n,m} X,至少 n 次,但是不超过 m 次

正则表达式的分割功能
          String类的功能:public String[] split(String regex)
练习:
        /**
         * @param args
         * * A:案例演示
         * 需求:我有如下一个字符串:”91 27 46 38 50”,请写代码实现最终输出结果是:”27 38 46 50 91”
         * 分析:
         * 1,将字符串切割成字符串数组
         * 2,将字符串转换成数字并将其存储在一个等长度的int数组中
         * 3,排序
         * 4,将排序后的结果遍历并拼接成一个字符串
         */
                public static void main(String[] args) {
                        String s = "91 27 46 38 50";
                        //1,将字符串切割成字符串数组
                        String[] sArr = s.split(" ");
                        //2,将字符串转换成数字并将其存储在一个等长度的int数组中
                        int[] arr = new int[sArr.length];
                        for (int i = 0; i < arr.length; i++) {
                                arr[i] = Integer.parseInt(sArr[i]);         //将数字字符串转换成数字
                        }
                        //3,排序
                        Arrays.sort(arr);
                        StringBuilder sb = new StringBuilder();
                        for (int i = 0; i < arr.length; i++) {
                                if(i == arr.length - 1) {
                                        sb.append(arr[i]);
                                }else {
                                        sb.append(arr[i]).append(" ");
                                }
                        }
                        System.out.println(sb);
                }

正则表达式的替换功能
          String类的功能:public String replaceAll(String regex,String replacement)
  
正则表达式的分组功能
          捕获组可以通过从左到右计算其开括号来编号。例如,在表达式 ((A)(B(C))) 中,存在四个这样的组:
  
                1     ((A)(B(C)))
                2     (A
                3     (B(C))
                4     (C)
       
                组零始终代表整个表达式。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马