正規表現を使用してから数年が経ちましたが、私の記憶が正しければ、次のように動作するはずです。
String test = "axaxa";
Pattern p = Pattern.compile("([a-c])x\1x\1");
Matcher m = p.matcher(test);
m は実行時に何も一致しません。これは、コードで行っていることの非常に単純化されたバージョンです。その例は、実際には正規表現に関する Java チュートリアルから取られています! 私は自分のhtmlマッチングコードを以前から書き直そうとしましたが、それがうまくいかなかったので、何か間違ったことをしたと思って調査に行きました...インターネットによると、そうではありませんでした。そう。なぜこれが機能しないのか、誰にも手がかりがありますか?
追加情報、test.matches(the_pattern)
返品false
。グループのバックトラックが台無しになっているようです。