Регулярное выражение Javascript
Мне нужно построить маршрутизатор, который направляет запрос REST на правильный контроллер и действия. Вот несколько примеров:
POST /users
GET /users/:uid
GET /users/search&q=lol
GET /users
GET /users/:uid/pictures
GET /users/:uid/pictures/:pid
Важно иметь одно регулярное выражение и как можно лучше, поскольку маршрутизация необходима и выполняется при каждом запросе.
сначала мы должны заменить: (до конца или до следующей косой черты /) в URL с помощью регулярного выражения, которое мы можем впоследствии использовать для проверки URL с URL запроса.
Как мы можем заменить эти динамические маршруты на регулярные выражения? Как поиск строки, которая начинается с & quot;: & quot; и заканчиваются "/", концом строки или "& amp;".
Вот что я попробовал:
var fixedUrl = new RegExp(url.replace(/\\\:[a-zA-Z0-9\_\-]+/g, '([a-zA-Z0-0\-\_]+)'));
По какой-то причине это не работает. Как я могу реализовать регулярное выражение, которое заменяет: id на регулярное выражение, или просто игнорирует их при сравнении с реальным URL запроса.
Спасибо за помощь