регулярное выражение параметров IIS - PullRequest
1 голос
/ 30 октября 2019

Я рассмотрел пару вопросов о регулярных выражениях параметров URL, но ни один из них, похоже, не касается конкретно моей проблемы. Я пытался найти правильный шаблон регулярных выражений на сайте www.regex101.com и не нашел никаких успехов. У меня есть URL, параметры которого разделены /. Я могу регулярно проверять один параметр за раз, но в идеале я хотел бы разработать шаблон, который может извлекать все параметры. Пока что это то, что у меня есть:

\/([a-zA-z]+)\/([a-zA-z]+)\/([a-zA-z-]+)\/

URL, который я пытаюсь изменить:

www.mydomain.com/firstparameter/secondparameter/hyphenated-url-parameter/

Вышешаблон работает для этого примера, но мне нужно, чтобы он работал и для этих двух примеров:

www.mydomain.com/firstparameter/secondparameter/

www.mydomain.com/firstparameter/

Возможно ли даже написать один единственныйрегулярное выражение, которое может извлечь параметры из каждого примера выше?

Ответы [ 2 ]

0 голосов
/ 31 октября 2019

Это должно работать для любого количества параметров:

\/([\w|-]+)

Пример

0 голосов
/ 30 октября 2019

Попробуйте регулярное выражение: \/([a-zA-z]+)\/(?:(?:([a-zA-z]+)\/)?([a-zA-z-]+)\/)?

Подробности:

? Quantifier - соответствует от нуля до одного раза, столько раз, сколько возможно

Демо

Здесь предполагается, что существует хотя бы один параметр и максимум 3 параметра.

...