Курс языка программирования Raku / Регулярные выражения и грамматики / Регулярные выражения / Альтернативы / Exercises / http или https
Решение: http или https
Вот один из возможных вариантов решения задачи.
Код
say 'https://example' ~~ / http | https /;🦋 Исходный код можно найти в файле http-or-https.raku.
Вывод
「https」Комментарии
В начале строки подошли бы и
http, иhttps, но|использует сопоставление по самому длинному токену.Поэтому побеждает более длинное
https, хотяhttpзаписан первым.
Другой вариант решения
Эти два слова различаются лишь конечной s, поэтому
вместо альтернативы можно сделать эту s необязательной с
помощью квантификатора ?:
say 'https://example' ~~ / https? /; # 「https」Знак ? связывается только с тем атомом, который стоит
прямо перед ним, — с буквой s, — а не со всем словом,
поэтому https? читается как http, за которым
идёт необязательная s. Один этот шаблон подходит и для
http, и для https, и, будучи жадным, он берёт
s всякий раз, когда она есть.
Навигация по курсу
← http или https | Якоря →