Извлеките исходный IP-адрес из двух разных примеров журнала с помощью регулярных выражений - PullRequest
0 голосов
/ 19 января 2020

У меня есть следующее регулярное выражение:

"id.resp_h"|"rx_hosts":(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}),

Я пытаюсь извлечь IP-адрес источника из двух разных образцов журнала. «id.orig_h» и «tx_hosts» - это два разных поля для Source IP. Как игнорировать речевые метки и квадратные скобки? я просто хочу извлечь IP-адреса

schema_id=17127524534057985804:skip_writers="":{"_path":"conn","_system_name":"hostname","_write_ts":"2020-01-12T22:09:28.853417Z","ts":"2020-01-12T22:07:14.642074Z","uid":"Cm4cbmvRjlmd2I52c","id.orig_h":"192.168.1.1","id.orig_p":xxx,"id.resp_h":"192.168.1.2","id.resp_p":xxx,"proto":"udp",

schema_id=17223896091372211545:skip_writers="":{"_path":"files","_system_name":"Hostname","_write_ts":"2020-01-12T22:09:00.016260Z","ts":"2020-01-12T22:07:14.108217Z","fuid":"FnmzOv3Fkhr8lP0qL","tx_hosts":["192.168.1.1","192.168.1.1"],"rx_hosts":["192.168.1.10"],

Любая помощь будет с благодарностью: -)

Спасибо, JM

1 Ответ

0 голосов
/ 19 января 2020

Попробуйте, если хотите решить с помощью регулярного выражения:

(?: "id.resp_h" ["[:] |" rx_hosts "[" [:] ) (\ d {1,3}. \ d {1,3}. \ d {1,3}. \ d {1,3})

См. здесь

...