Регулярное выражение не обнаруживает все URL - PullRequest
0 голосов
/ 25 апреля 2019

Я хотел бы обнаружить все эти URL с помощью регулярного выражения:

/liga-femenina-1
/liga-femenina-1/equipos
/liga-femenina-1/resultados
/liga-femenina-1/estadisticas
/liga-femenina-1/buscador
/liga-femenina-2
/liga-femenina-2/equipos
/liga-femenina-2/resultados
/liga-femenina-2/estadisticas
/liga-femenina-2/buscador

Я определил это регулярное выражение:

\/liga-femenina-(1|2)\/?\w*

Это регулярное выражение обнаруживает только первый URL.

enter image description here

Но, если я удаляю первый URL, регулярное выражение правильно определяет следующий URL, если раньше это не делалось.

enter image description here

Как я могу сделать так, чтобы мое регулярное выражение обнаруживало все URL? Что я делаю не так?

1 Ответ

4 голосов
/ 25 апреля 2019

Попробуйте с флагом g (глобальный):

/\/liga-femenina-(1|2)\/?\w*/g

g

глобальное совпадение;найти все совпадения, а не останавливаться после первого совпадения

Обратите внимание: Если вы используете начало и конец в регулярном выражении, тогда используйте флаг m (многострочный):

/^\/liga-femenina-(1|2)\/?\w*+$/gm

m

многострочный;обрабатывать начальные и конечные символы (^ и $) как работу над несколькими строками (т. е. соответствовать началу или концу каждой строки (разделенных \ n или \ r), а не только самому началу или концу всей входной строки)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...