Perbedaan antara pipa tunggal dan pipa ganda di Raku Regex (| Vs ||)


9

Ada dua jenis pergantian di regex Raku: the |dan ||. Apa bedanya ?

say 'foobar' ~~ / foo || foobar /  # 「foo」
say 'foobar' ~~ / foo | foobar /   # 「foobar」

Jawaban:


12
  • The || adalah perilaku pergantian yang lama: coba pergantian dari yang pertama dinyatakan ke terakhir

  • The | coba pergantian dari atom deklaratif terpanjang ke yang terpendek . Ini disebut strategi Spec Matching Token Terpanjang .

say 'foobar' ~~ / foo || foobar /  # 「foo」 is the first declared
say 'foobar' ~~ / foo | foobar /   # 「foobar」 is the longest token

Jawaban lebih rinci dalam posting ini

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.