Javaでよく使われる正規表現

2256 ワード

1.事前定義文字クラス
.      (               )

\d   :[0-9]

\D    :[^0-9]

\s     :[ \t
\x0B\f\r] \S :[^\s] \w :[a-zA-Z_0-9]

2.Greedy数量詞
X?  X,        

X*  X,      

X+  X,      

X{n}    X,  n 

X{n,}   X,  n 

X{n,m}  X,  n ,     m  

3.範囲語
[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(  )

注意:範囲語の中にはどんなに長くても、数語の配合がなくても1文字しか一致しません.
4.正規表現は主に文字列を操作するための規則であり、正規表現の文字に対する操作には主に以下のいくつかの応用がある.
       matches():


       split():


       replaceAll(String regex, String replacement): 


    **  **:

                                 。  ,         
                    

        Matcher  ,                    ,               。
          ,        :

            Pattern p = Pattern.compile("  ");
            Matcher m = p.matcher("aaaaab");
            boolean b = m.matches();

                 :

            1.Pattern(    )
            2.Matcher(     )

                 :

            1.find()
            2.group()

              :  group           find                 ,    。

               

            \b                          ,        。

例:
public class Demo1 {

    public static void main(String[] args) {

        //           
        String content = "da jia de jia qi wan bi liao hai kai xin ma";
        String reg = "\\b[a-zA-Z]{3}\\b";
        //            Pattern  。
        Pattern p = Pattern.compile(reg);
        //               Matcher  。
        Matcher m = p.matcher(content);

        while(m.find()){
            System.out.println(m.group());
        }   
    }
}