помогите как из этого:
$re = '/catalog\/category.+cid=[0-9]+&/';
$str = '/catalog/category/vechernie-platya/?cid=50103022&';
preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 0);
print_r($matches);
получить значение [0-9] то есть 50103022
Ставите вокруг [0-9]+ скобочки --> ([0-9]+), чтобы была отдельная группа захвата для искомого числа. Результат пробуете наблюдать в элементе массива с индексом 1, так как это первая группа захвата из-за отсутствия остальных.
Возможно, лучше разобрать запрос, как запрос:
$url = '/catalog/category/vechernie-platya/?cid=50103022&';
$s_query = parse_url($url, PHP_URL_QUERY);
parse_str($s_query, $query);
var_dump($query['cid']);
Оказывается решения очень простое:
$re = '/catalog\/category.+cid=([0-9]+)&/';
$str = '/catalog/category/vechernie-platya/?cid=50103022&';
preg_match($re, $str, $match);
echo $match[1];
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники