正規表現の知識の詳細な単語境界(java版の例)


正規表現の知識はシリーズを詳しく解き、コードの例によって正規表現の知識ソースコードのダウンロードアドレスを説明します。http://download.csdn.net/detail/gnail_oug/950944
例機能:1、単語の両方に境界2、単語の両方に境界3、左に境界4、右に境界を設定しない
String str="the cat scattered his food catch mcat";

System.out.println("----     -----");
Pattern p=Pattern.compile("cat");
Matcher m=p.matcher(str);
while(m.find()){
    System.out.println(m.group()+"     :["+m.start()+","+m.end()+"]");
}

// \b      ,    ,\b       ,                   
// (  、      ,   \w      )              (    \W      )  。
System.out.println("----       -----");
p=Pattern.compile("\\bcat\\b");
m=p.matcher(str);
while(m.find()){
    System.out.println(m.group()+"     :["+m.start()+","+m.end()+"]");
}

System.out.println("----      -----");
p=Pattern.compile("\\bcat");
m=p.matcher(str);
while(m.find()){
    System.out.println(m.group()+"     :["+m.start()+","+m.end()+"]");
}

System.out.println("----      -----");
p=Pattern.compile("cat\\b");
m=p.matcher(str);
while(m.find()){
    System.out.println(m.group()+"     :["+m.start()+","+m.end()+"]");
}
実行結果:
----     -----
cat[4,7]
cat[9,12]
cat[27,30]
cat[34,37]
----       -----
cat[4,7]
----      -----
cat[4,7]
cat[27,30]
----      -----
cat[4,7]
cat[34,37]