Non c'è limite all'espressione regolare compilata con Pattern.CANON_EQ
. TuttaviaPerché `Pattern.compile (" (?: U00e9) ", Pattern.CANON_EQ)` gira?
Pattern.compile("(?:\u00e9)",Pattern.CANON_EQ);
genera un'eccezione:
java.util.regex.PatternSyntaxException: Unmatched closing ')' near index 11
((?:é)|é)|e)́)
^
Nota che il modello è la stringa normalizzata. Sembra un bug in JRE, ma non riesco a trovare un bug nel tracker dei problemi.
ottengo un errore di leggermente diverso, la chiusura senza pari ')' è vicino indice 13 qui, '(:(?: e) | é) | e))', il? penultimo ')' è indicato. Non gira con due aperture extra '(' o con un carattere ASCII tra '\ u00e9' e ')'. –