Redjik Джедай-мастер 4 Июл 2011 #1 Очень простенькая регулярка, но не могу осилить... PHP: <?php preg_match_all ('%^(\w+)(/(\w+))*?$%', 'papa/mama/ya', $matches); print_r ($matches[3]); ?> Как заставить ее в $matches[3] закинуть mama,ya Сейчас показывает только ya...
Очень простенькая регулярка, но не могу осилить... PHP: <?php preg_match_all ('%^(\w+)(/(\w+))*?$%', 'papa/mama/ya', $matches); print_r ($matches[3]); ?> Как заставить ее в $matches[3] закинуть mama,ya Сейчас показывает только ya...
Вурдалак Продвинутый новичок 4 Июл 2011 #2 Взять «(/(\w+))*» в скобки ещё раз. PHP: $pattern = '%^(\w+)((/\w+)*)$%';
Redjik Джедай-мастер 4 Июл 2011 #3 Не совсем то, нужно в массив $matches[номер шаблона] 0=>mama, 1=>ya Этот пэттерн проверил... в зависимости от шаблона дает или ya или /ya или /mama/ya
Не совсем то, нужно в массив $matches[номер шаблона] 0=>mama, 1=>ya Этот пэттерн проверил... в зависимости от шаблона дает или ya или /ya или /mama/ya
Redjik Джедай-мастер 4 Июл 2011 #4 Добился желаемого результата через 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])
Добился желаемого результата через 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])