/(\w+)\:\/\/(\d+\.\d+\.\d+\.\d+)\:(\d+)\/(\w+)\?(.+)/
: $ 1 - протокол, $ 2 - ip, $ 3 - порт, $ 4 - фактический URL, $ 5 - действия
есть и другой способ:
протокол: url.split('://')[0]
ip / имя домена: url.split('://')[1].split(':')[0]
(или если порт не указан - url.split('://')[1].split('/)[0]
порт: url.split('://')[1].split(':')[1].split('/')[0]
Фактический URL: url.split('?')[0].split('/').reverse()[0]
действия: url.split('?')[1].split('&')/*the most possible separator imho*/
элементы этого массива также могут быть объединены ('=')
для разделения имен и значений переменных.
я знаю, что есть мнение, что splice
не следует использовать, но я думаю, что это просто прекрасно, когда используется правильно.