Nella documentazione per la classe Java Pattern
, vedo che il quantificatore esatto X{n}
ha entrambe le forme avidi e riluttante:Differenza tra esatto avido/riluttante X {n}?
quantificatori Greedy
- X {n} X, esattamente n volte
- ...
Reluctant quanti fiers
- X {n}? X, esattamente n volte
- ...
La documentazione fornisce esempi generali della differenza tra il comportamento avido e riluttante, ma non fornisce alcun esempio per i quantificatori esatte.
All'inizio ho pensato, "Beh, forse la differenza è che lo stesso X
potrebbe corrispondere in modi diversi." Ma allora lo X
può avere i suoi specifiers greedy/riluttanti al suo interno, e abbastanza sicuro l'ho provato e questa non è una differenza (greedy vs reluctant).
Dato che, in entrambi i casi, corrisponderà esattamente a n
volte, c'è qualche differenza tra il comportamento dei due?
'X {2}' = 'X {2}?'. Il primo è più corto - questa è la differenza. –