Совпадение глобально и сравнение количества совпадений с 3
if ( ( () = m{/}g ) == 3 ) { say "Matched 3 times" }
, где оператор ()=
является воспроизведением контекста, форсируя контекст списка справа, новозвращает количество элементов этого списка, когда скалярный контекст предоставлен на левой стороне.
Если вас не устраивает такое растяжение синтаксиса, присваивайте массиву
if ( ( my @m = m{/}g ) == 3 ) { say "Matched 3 times" }
, где последующее сравнение оценивает его в скалярном контексте.
Вы пытаетесь сопоставитьтри подряд /
и в вашей строке этого нет.