Curso de Raku / Expresiones regulares y gramáticas / Expresiones regulares / Alternativas / Exercises / http o https

Solución: http o https

Aquí tienes una posible solución para la tarea.

Código

say 'https://example' ~~ / http | https /;

🦋 Puedes encontrar el código fuente en el archivo http-or-https.raku.

Salida

「https」

Comentarios

  1. Tanto http como https podrían coincidir al principio, pero | usa el emparejamiento del token más largo.

  2. Así que gana el más largo, https, aunque http esté escrito primero.

Una solución alternativa

Las dos palabras solo se diferencian por una s final, así que en lugar de una alternativa puedes hacer opcional esa s con el cuantificador ?:

say 'https://example' ~~ / https? /; # 「https」

El ? se liga solo al átomo inmediatamente anterior — la s —, no a toda la palabra, así que https? se lee como http seguido de una s opcional. Ese único patrón empareja tanto http como https, y al ser voraz toma la s siempre que esté.

http o https   |   Anclas