@InfoLabs

Регулярное выражение: все кроме?

Здравствуйте, подскажите пожалуйста. Есть символы в виде: [controller]/[action](/[id])

Мне нужно разбить данную строку на массив с содержимым: controller, action
П.С. Если указаны скобки, то параметр не обязателен, его вносить в массив не нужно.
Например:
1) Если: [controller]/[action]/[id] то: ['controller', 'action', 'id']
2) Если: [controller]/[action](/[id]) то: ['controller', 'action']

Подскажите решение для preg_match_all

На данный момент все данные попадают в массив такой регуляркой: ![\w]+!
  • Вопрос задан
  • 7988 просмотров
Решения вопроса 1
GTRxShock
@GTRxShock
SA
Проверьте:
if( preg_match_all('/(\w+)\](?!\))/', '[controller]/[action](/[id])', $matches) )
{
    var_dump($matches[1]);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы