• java 正则表达式


    正则表达式    

    官方手册API----- 类pattern


    1.字符类


    /* [abc] a、b 或 c(简单类)
    [^abc] 任何字符,除了 a、b 或 c(否定)
    [a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围)
    [a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](并集)
    [a-z&&[def]] d、e 或 f(交集)
    [a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](减去)
    [a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](减去)

    */

    String regex = "[a-z&&[^m-p]]";
    System.out.println("m".matches(regex));
    System.out.println("a".matches(regex));
    System.out.println("z".matches(regex));
    System.out.println("n".matches(regex));

    2.预定义字符类,Reluctant 数量词

    3.正则表达式:切割功能 ----------split  属于string类中的方法

      String  s="a.b.cde.fghi";

       String[] arr=s.split("\.");       //由于点作为正则有意义的符号,需要转义才能作为分隔符  ,注意   转义   方向;

        arr[i]=Integer.parseInt(str[i]);   //string转int 

    4.正则表达式:替换功能-----------replaceAll   属于String类中的方法

    5.正则表达式:分组

    * 捕获组可以通过从左到右计算其开括号来编号。例如,在表达式 ((A)(B(C))) 中,存在四个这样的组: 

    1 ((A)(B(C))) 
    2 (A 
    3 (B(C)) 
    4 (C)

                                                                                               (.)\1(.)2 :1重复第一组; 2重复第二组 ;

    思考题:

    切割重复单词

    6.正则表达式:提取

     这里的$1 ,就是用前面匹配到的第一组字符去替换;$符是提取 

  • 相关阅读:
    mybatis显示sql语句 log4j.properties配置文件
    Netty 4.0 demo
    Netty多线程处理机制
    crontab定时任务中文乱码问题
    linux grep、find 命令详解
    resin access.log format配置详解
    linux top命令详解
    正则表达式介绍及案例分享
    java定时任务
    rhApp遇到的项目问题
  • 原文地址:https://www.cnblogs.com/yimian/p/6497804.html
Copyright © 2020-2023  润新知