zoukankan      html  css  js  c++  java
  • Java 正则表达式

     

    正则表达式:regex

    \    反斜线
    .    任意字符
    d    数字0-9
    D 非数字: [^0-9]
    
    [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](减去)
    
    ^    行的开头 
    $    行的结尾 
        单词边界 
    B    非单词边界 
    
    X?    X,一次或一次也没有 
    X*    X,零次或多次 
    X+    X,一次或多次 
    X{n}    X,恰好 n 次 
    X{n,}    X,至少 n 次 
    X{n,m}    X,至少 n 次,但是不超过 m 次

    正则表达式的常用:

    1 匹配:
      字符串提供的方法
      boolean matches(String regex)
      手机号:1[34578][0-9]{9}
    2 切割:
      字符串提供的方法
      String[] split(String regex)
    3 替换:
      字符串提供的方法
      String replaceAll(Strinf regex, String replacement):
      把字符串中符合regex规则的替换为replacement
      使用$可以取得正则表达式中第几组的值
        eg:
        String ss = "zhangsan$$$lisi^^^^^^^^^jksjda####";
        String regex = "(.)\1+";
    
        String s1 = ss.replaceAll(regex, "$1");//取regex第一组的值
        Systm.out.println(s1);
    4 获取:
      把正则表达式编译成Pattern对象
      Pattern不具备获取的功能,需要得到一个Matcher对象
      Matcher具备获取的功能
    
      Pattern对象:
        Pattern.compile(regex):
        将正则表达式编译成Pattern对象
    
        eg:
        String str = "zhu yi le wo shi hen kai xin de ";
        String regex = "[a-z]{3}":
    
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(str);



  • 相关阅读:
    java实现oracle数据库基本操作
    在Myeclipse中用Java语言操作mysql数据库
    Linux面试题
    Python fabric远程自动部署简介
    使用RobotFramework的DataBaseLibrary(Java实现)
    如何编写Robot Framework测试用例2(测试用例语法1)
    如何编写Robot Framework测试用例1(基本格式篇)
    使用远程接口库进一步扩展Robot Framework的测试能力
    TweenLite参数说明 中文翻译
    TweenFilterLite参数说明 中文翻译
  • 原文地址:https://www.cnblogs.com/roxy/p/7341696.html
Copyright © 2011-2022 走看看