PHP pregmatch を Java に変換する際に問題が発生しています。私はそれがすべて正しいと思っていましたが、うまくいかないようです。コードは次のとおりです。
元の PHP:
/* Pattern for 44 Character UUID */
$pattern = "([0-9A-F\-]{44})";
if (preg_match($pattern,$content)){
/*DO ACTION*/
}
私のJavaコード:
final String pattern = "([0-9A-F\\-]{44})";
public static boolean pregMatch(String pattern, String content) {
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(content);
boolean b = m.matches();
return b;
}
if (pregMatch(pattern, line)) {
//DO ACTION
}
したがって、私のテスト入力は次のとおりです。 DBA40365-7346-4DB4-A2CF-52ECA8C64091-0
一連の System.outs を使用すると、b = false であることがわかります。