如何从文本文件中提取IP地址

时间:2013-08-09 09:47:12

标签: c string ip

我想要一个程序从文本文件“rawdata.txt”中提取IP地址,其中包含热门网站的原始traceroute数据,如下所示。

Tracing route to www.google.com [173.194.38.145]
over a maximum of 30 hops:

  1

Tracing route to ds-sg-fp3.wg1.b.yahoo.com [106.10.187.79]
over a maximum of 30 hops:

Trace complete.

2 个答案:

答案 0 :(得分:1)

您可以在C中创建一个小程序,它将从stdin中读取字节并查找以下模式:

%d.%d.%d.%d\n

...一旦找到这种模式,它将分别存储IP地址并继续搜索。您需要将文本文件传递给程序:

./program < textfile.txt

答案 1 :(得分:0)

您需要逐行读取文件,并用' '分隔符连接每一行。然后你需要检查第五个令牌是否是一个IP地址(只有数字和点)。如果没有,请从第6个标记处取出。

如果您正在编写多线程应用程序,则不鼓励使用strtok。您可以编写自己的标记生成器,也可以编写sscanf。