«x» в вашем первом случае - это оператор повторения, который принимает строку в качестве левого аргумента и количество повторений в качестве правого аргумента. Perl6 может реплицировать списки, используя оператор повторения "xx".
Ваш второй пример использует регулярное выражение m{^a}x
. Хотя вы можете использовать много разных типов разделителей, неофиты могут использовать знакомую нотацию, которая использует косую черту: m/^a/x
"x" в регулярном выражении называется модификатором или флагом и является лишь одним из многих необязательных флагов, которые можно использовать. Он используется для игнорирования пробелов в шаблоне регулярных выражений, но также позволяет использовать обычные комментарии внутри. Поскольку шаблоны регулярных выражений могут быть очень длинными и запутанными, использование пробелов и комментариев очень полезно.
Ваш пример очень короткий (все, что он говорит, это если первая буква строки начинается с "a"), поэтому вам, вероятно, не понадобятся пробелы или комментарии, но вы могли бы, если хотите.
Пример:
m/^a # first letter is an 'a'
# <-- you can put more regex on this line because whitespace is ignored
# <-- and more here if you want
/x