2014-10-21 2 views
0

Я пытаюсь написать regexp для конфигурации nginx. Вот примеры URL:Regexp в конфигурации nginx (имя_сервера)

api.drive.pss.np.sweetdev.com 
api.google.pss.np.sweetdev.com 
api.mail.pss.np.sweetdev.com 
api.google.alex.np.sweetdev.com 
api.mail.alex.np.sweet-dev.com 

Я хочу, чтобы извлечь вторую и третью часть к переменным site_name и USER_NAME!.

Это мои попытки (только для второй части):

server_name ~^api\.([a-z]+)\.pss\.np\.sweetdev\.com$; 
server_name ~^api\.(?<site_name>\w+)\.pss\.np\.sweetdev\.com$; 

Почему это не работает?

Спасибо вам заранее.

ответ

0

Я пробовал это в perl на основе вашего ввода, используя его.

#!/USR/бен/Perl

use strict; 
my $server_name = qq(api.drive.pss.np.sweetdev.com 
api.google.pss.np.sweetdev.com 
api.mail.pss.np.sweetdev.com 
api.google.alex.np.sweetdev.com 
api.mail.alex.np.sweet-dev.com); 


my (@site_name, @user_name) = $server_name =~ m{api\.([^\.]+)\.([^\.]+)\.np\.sweet-?dev\.com}ig; 

print join("\n",@site_name,@user_name); 
Смежные вопросы