Unterschied zwischen Einzelrohr und Doppelrohr in Raku Regex (| Vs ||)


9

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」

Antworten:


12
  • 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

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.