Cursus Raku / Expressiones regulares et grammaticae / Expressiones regulares / Capturae
Greges sine captura
Unci rotundi ( ) duo munera simul agunt: partem
exemplaris gregant et eam in $0, $1
et cetera capiunt. Interdum solum primum munus vis — plures
atomos ut unam unitatem tractare — sine numero capturae in id impenso.
Ad hoc utere uncis quadratis [ ], qui sine
captura gregant.
Gregatio refert simul ac quantificatorem adfigis. Quantificator solum ad atomum statim ante se adligatur, itaque exemplar infra solam ultimam litteram repetit:
say 'abccc' ~~ / abc ** 3 /; # 「abccc」Sola c ter repetita est. Involve totam partem in
[ ] ut totam repetas:
say 'abcabcabc' ~~ / [ abc ] ** 3 /; # 「abcabcabc」Nunc [ abc ] una unitas est, et ** 3 ad
gregationem pertinet.
Quia [ ] nullum locum capturae capit, numeri partibus
quas revera curas reservati manent. Compara simplicem congruentiam
clavis et valoris:
if 'foo=42' ~~ / (\w+) '=' (\d+) / {
say $0; # 「foo」
say $1; # 「42」
}Fac clavem verbo praecedi posse quod praeterire vis. Grega illud
praefixum per [ ] ne numerationem turbet:
if 'the foo=42' ~~ / [ \w+ \s ]? (\w+) '=' (\d+) / {
say $0; # 「foo」
say $1; # 「42」
}Optionale [ \w+ \s ]? the congruit sed
nullam capturam vindicavit, itaque $0 adhuc clavis est et
$1 adhuc valor. Si illud praefixum per ( )
scripsisses, omnia mota essent: praefixum $0 fieret, clavis
$1, et valor $2.
Regula brevis est: utere ( ) cum textum congruentem
servare vis, et [ ] cum solum gregare vis. Utraque
quantificatores et alternationes accipiunt, quapropter alternatio
superior [ cat | dog ] house uncis quadratis usa est —
gregatione egebat sed non alia captura.
Navigatio cursus
← Quiz — Capturae | Nomen plicae divide →
💪 Vel recta ad exercitationes huius sectionis
i.