Es gibt zwei Arten von Abwechslung in Rakus Regex: die |
und ||
. Was ist der Unterschied ?
say 'foobar' ~~ / foo || foobar / # 「foo」
say 'foobar' ~~ / foo | foobar / # 「foobar」
Die || ist das alte Wechselverhalten: Versuchen Sie den Wechsel vom ersten zum letzten deklarierten
Die | Versuchen Sie den Wechsel vom längsten zum kürzesten deklarativen Atom . Es wird als Longest Token Matching Spec- Strategie bezeichnet.
say 'foobar' ~~ / foo || foobar / # 「foo」 is the first declared
say 'foobar' ~~ / foo | foobar / # 「foobar」 is the longest token
Detailliertere Antwort in diesem Beitrag