gpt4 book ai didi

regex - Traceroute 输出的正确正则表达式

转载 作者:太空宇宙 更新时间:2023-11-04 03:51:00 34 4
gpt4 key购买 nike

下面的示例输出是由traceroute转储的,我想使用pcre表达式来提取一些数据。

host-1 (1.1.1.1)  10.111 ms  20.222 ms host-2 (2.2.2.2)  21.716 ms
host-3 (2.2.2.2) 10.111 ms 31.716 ms 21.716 ms

我需要写成一行:

 - domain : host-1
- ip : 1.1.1.1
- t1 : 10.111
- t2 : 20.222

- domain eg: host-2
- ip : 2.2.2.2
- t1 : 21.716

- domain eg: host-3
- t1 : 10.111
- t2 : 31.716
- t3 : 21.716

我将此正则表达式与 pcretest /(?:(?:([\w\-\.]+)\s\(([\d+\.]+)\))(?:\s+(\d+\.\d+)\sms){1,3})*/g

但我只能在域和 IP 之后获得最后响应时间,例如,对于 host-3 (2.2.2.2) 10.111 ms 31.716 ms 21.716 ms 行,仅返回 21.716。

正确的正则表达式是什么?

最佳答案

这种工作最好使用 unix 中的 AWK 来完成。如果您想在 Tab 上拆分字符串,可以将其通过管道传输到 awk 中,并能够使用 $1、$2... 等访问输入的各个元素。 awk 语法的一些示例是:

“一些命令”| awk '{print $2}'

如果您想进一步阅读,最好的选择是本指南 here

关于regex - Traceroute 输出的正确正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26388105/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com