概要
Javaで「正規表現パターンにおけるエスケープ処理」の動作を確認してみました。
以下のページを参考にしました。
実装
以下のファイルを作成しました。
JSample6_1.java
import java.util.regex.*;
class JSample6_1{
public static void main(String[] args){
String regex = "a\\.b";
Pattern p = Pattern.compile(regex);
Matcher m1 = p.matcher("a.b");
System.out.println(m1.matches());
Matcher m2 = p.matcher("axb");
System.out.println(m2.matches());
}
}
以下のコマンドを実行しました。
$ javac JSample6_1.java
$ java JSample6_1
true
false
以下のファイルを作成しました。
JSample6_2.jav
import java.util.regex.*;
class JSample6_2{
public static void main(String[] args){
String regex = Pattern.quote("A.B.C.D");
Pattern p = Pattern.compile(regex);
Matcher m1 = p.matcher("A.B.C.D");
System.out.println(m1.matches());
Matcher m2 = p.matcher("AABBCCDD");
System.out.println(m2.matches());
}
}
以下のコマンドを実行しました。
$ javac JSample6_2.java
$ java JSample6_2
true
false
まとめ
何かの役に立てばと。