2013-11-17 2 views
0

Я пытаюсь отфильтровать URL-адрес с помощью регулярного выражения, и теперь я добавил новую часть URL-адреса, поэтому существующий скрипт regex не будет работать.Regex Pattern для фильтрации URL-адресов

location ~ ^/p/(?<secure>[\w\-=]+,\d+)(?<file>/.*)$ 

Я получаю $ безопасного, значение $ файла, теперь мне нужно получить $user, а также.

Старый URL структуры:

/p/uwoT4ccBKjBryHxQNrwRzA,1385726761/test.zip 

Новая структура URL:

/p/uwoT4ccBKjBryHxQNrwRzA,1385726761,USER/test.zip 

Я добавил ,USER часть на новый URL-адрес, как вы делаете это в регулярном выражении?

ответ

1

Попробуйте это регулярное выражение:

location ~ ^/p/(?<secure>[\w\-=]+,\d+),(?<user>[^/]+)(?<file>/.*)$ 

$ безопасный, $ файл и $ пользователю

+0

спасибо, но это возвращается, USER. Вывод содержит запятую. –

+1

регулярное выражение обновлено. совпадающий пользователь без ',' –

+0

Отлично, СПАСИБО! btw Как вы это делаете? –