Ошибка в регулярке

Redjik

Джедай-мастер
Очень простенькая регулярка, но не могу осилить...

PHP:
<?php
preg_match_all ('%^(\w+)(/(\w+))*?$%', 'papa/mama/ya', $matches);
print_r ($matches[3]);
?>
Как заставить ее в $matches[3] закинуть mama,ya

Сейчас показывает только ya...
 

Redjik

Джедай-мастер
Не совсем то, нужно в массив $matches[номер шаблона] 0=>mama, 1=>ya

Этот пэттерн проверил... в зависимости от шаблона дает или ya или /ya или /mama/ya
 

Redjik

Джедай-мастер
Добился желаемого результата через 2 регулярки ... (плаваю в них)... можно изящнее?

PHP:
preg_match_all ('%^(\w+)([/\w]*)?$%', 'papa/mama/ya/test/jopa', $matches);
print_r ($matches[2]);
echo $matches[2][0];
echo '</br>';
preg_match_all ('%/(\w+)*%',$matches[2][0],$otherMatches);
print_r ($otherMatches[1])
 
Сверху