Объедините несколько префиксов Django url по шаблону на одну страницу - PullRequest
0 голосов
/ 12 июля 2020

У меня есть следующие шаблоны URL-адресов Django:

urlpatterns += patterns('some.utils',
    url(r'^media$', logic0),
    url(r'^tickets$', logic1),
    url(r'^dogs$', logic2),
    url(r'^some-location-with-ending.png$', LOGIC3),
    url(r'^some-location-other-ending.svgh$', LOGIC3),
    url(r'^some-location-number-123$', LOGIC3),
    url(r'^some-location-5$', LOGIC3),
)

Есть ли простой способ (регулярное выражение?) Объединить все префиксы some-location в одну строку? Конечно, также для будущих моделей, которые будут начинаться с some-location

1 Ответ

0 голосов
/ 12 июля 2020

Вы можете перечислить их в чередовании |

^some-location-(?:with-ending\.png|other-ending\.svgh|number-123|5)$

Regex demo

Немного менее конкретный c шаблон может соответствовать some-location- и сопоставьте следующие символы слова, при желании повторяя перед ним - и при желании сопоставляя расширение.

^some-location-\w+(?:-\w+)*(?:\.\w+)?$

Regex demo

...