Регулярное совпадение символов между двумя символами, НЕ включительно в Javascript - PullRequest
0 голосов
/ 22 мая 2018

У меня есть URL-адрес, на который я хочу направить маршрутизатор React.Идентификатор в конце - это часть, которая изменяется.

https://mywebsite.com/p/foo-bar-fizz-buzz-myid1234

Какое правильное регулярное выражение мне нужно использовать в реагирующем маршрутизаторе?Прямо сейчас у меня есть следующее.

<Route path="(p\/(.*-))":myId component={myComponent} />

Это мое понимание того, что мне нужно захватить значения после 'p /' до последней черты включительно.Я видел ответы, связанные с осмотром, но они не поддерживаются в Javascript.Как мне это сделать?

1 Ответ

0 голосов
/ 22 мая 2018

Из того, что я понял, вы хотите соответствовать всему до последней черты.

Это может быть достигнуто с помощью этого выражения.

/\/p\/.+\-/
  • match / p /
  • соответствует одному или нескольким символам, кроме разрывов строк.Это будет продолжаться до тех пор, пока оно совпадает.
  • заставляет его совпадать с -, поэтому оно остановит предыдущее выражение здесь.

React Router использует path-to-regexp, поэтому ваш код должен работать с этим решением

<Route path="(p\/(.+\-)):myId" component={myComponent} />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...