Я думаю, что ваша идея должна работать.
Это то же самое, что глобусы реализованы в стандартной библиотеке Python.Глобус переводится в эквивалентное регулярное выражение с подстановочными знаками *
и ?
, переведенными в .*
и .
.В вашем случае вы бы заменили *
на что-то вроде [^/]+
.
Единственная проблема в этом подходе состоит в том, что вам придется экранировать все управляющие символы регулярного выражения, поэтому .
необходимо заменить на \.
и [
на \[
и т. Д.