Java の Pattern.compile() 関数の完全ガイド
JavaにおけるPattern.compileメソッドは正規表現をコンパイルするためのメソッドです。これは、マッチング操作を実行するために使用できるPatternオブジェクトを返します。
Pattern.compileメソッドには2つのオーバーロードの形があります。
- 文字列の正規表現でパターンをコンパイルします。
- パラメータは正則表現型の文字列です。
- 正規表現を用いた照合を行うためのパターンオブジェクトを返します。
- パターン コンパイル(String regex, int flags)
- 正規表現を表す文字列とオプションを表します。
- 正規表現による照合操作を行うためのパターンオブジェクトを返します。
- 正則表現の照合動作を設定するためのフラグを使用できます。複数のフラグは、|で区切って使用できます。
- よく使われるフラグは次のとおりです。
- Pattern.CASE_INSENSITIVE:大文字と小文字を区別しない。
- マルチラインモード:パターン.MULTILINE
- Pattern.DOTALL: . が改行を含むすべての文字とマッチします。
- Pattern.UNICODE_CASE:启用Unicode感知的大小写折叠。
- Pattern.UNIX_LINES:Unix行モードを有効にする。
Pattern.compile 関数の使用例を以下に示します。
String regex = "abc"; // 正则表达式
String input = "abcdefg"; // 输入字符串
// 使用compile方法编译正则表达式
Pattern pattern = Pattern.compile(regex);
// 使用Pattern对象进行匹配
Matcher matcher = pattern.matcher(input);
// 判断是否匹配成功
boolean isMatch = matcher.matches();
System.out.println(isMatch);
// 使用标志位进行匹配
Pattern patternWithFlag = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
Matcher matcherWithFlag = patternWithFlag.matcher(input);
boolean isMatchWithFlag = matcherWithFlag.matches();
System.out.println(isMatchWithFlag);
上記コードでは最初にPattern.compileメソッドを用いて正規表現をコンパイルし、そのPatternオブジェクトを用いてMatcherオブジェクトを作成し、最後にMatcherオブジェクトを用いてマッチングを行います。