Помогите составить регулярное выражения для функции preg_match

Есть строка пути url вида '/testapi/moscow/user/123436566/messsage'.

Подскажите пожалуйста как с помощью функции php preg_match получить 'moscow' (может меняться на любой другой город)?


Ответы (1 шт):

Автор решения: Aleksey Vaganov

При помощи регулярки и preg_match это можно сделать так:

$matches = [];
$url = '/testapi/moscow/user/123436566/messsage';
preg_match('@/testapi/([^/]+)/user@', $url, $matches);

echo $matches[1];

Но можно разбить строку по символу / и взять второй сегмент:

$segments = explode('/', $url);
echo $segments[2];

Оба варианта в песочнице.

→ Ссылка