#node.js #regex
#node.js #регулярное выражение
Вопрос:
Я отправляю access.log
сообщение из NGINX на конечную точку AWS-Lambda (УЗЕЛ) (POST).
Я получаю следующее сообщение в CloudWatch:
{"text":"177.41.45.264 - - [25/Sep/2020:10:20:30 -0400] 'POST /webservices/realtime/some.php HTTP/1.1' 200 35 '-' '-'"}
Я хочу отфильтровать предыдущую строку из 4 частей:
- 177.41.45.264
- 25 / Сентябрь / 2020:10:20:30
- Публикация
- /webservices/realtime/some.php
На данный момент я могу вернуться 25/Sep/2020:10:20:30 -0400
. это ссылка. Может кто-нибудь подсказать, как я могу этого добиться? Это может быть 1 шаг (1 регулярное выражение) или 4 шага (4 регулярных выражения)
Комментарии:
1.
(d{1,3}(?:.d{1,3}){3})[s-] [([^][] )]s '([A-Z] )s ([^s'] )
, см. демонстрацию
Ответ №1:
Это делает это: ((?:d{1,3}.){3}d{1,3}).*[(.*)s-d{4}]s'(.*?)s(.*?)
Смотрите https://regex101.com/r/I8m8kD/1