Я пытаюсь прочитать имя сервера из файла конфигурации nginx.
Так что мне нужно пересмотреть такую строку:
server_name this.com www.this.com someother-example.com;
Я использую PHP preg_match_all и до сих пор пробовал разные вещи:
/^(?:server_name[\s]*)(?:(.*)(?:\s*))*;$/m
: Что ничего не дает мне
/^(?:server_name[\s]*)((?:(?:.*)(?:\s*))*);$/m
Что дает мне this.com www.this.com someother-example.com
Но я не могу найти правильный, чтобы перечислить домены как отдельные значения.
[
0 => 'this.com',
1 => 'www.this.com',
2 => 'someother-example.com'
]
Возможно, один из вас знает?
Спасибо!
как сказал твой дядя Боб:
(?:server_name|\G(?!^))\s*\K[^;|\s]+
Делает трюк!
Других решений пока нет …