ben*_*ipy 0 python regex text python-2.7
我正在解析auth.log中的所有IP地址.我有以下脚本来解析IP地址,它似乎工作正常(或至少它是捕获IP地址).
import re 
authLog = open("auth.log", "rb")
string = authLog.read()
ipAddress = re.findall(r"[0-9]+(?:\.[0-9]+){3}", string)
print ipAddress
我想要做的是将IP地址写入文本文件,每个IP都有自己的行.即
192.168.1.1
192.168.1.1
192.168.1.1
192.168.1.1 
etc...
这意味着我需要摆脱python和逗号的引号.现在它只是以这种格式打印IP地址:'192.168.1.1','192.168.1.1','192.168.1.1','192.168.1.1'等...
执行此操作的最佳方法是什么?一如既往,您的帮助会非常受欢迎.
首先,我建议选择一个不同的名称ipAddress.findall返回字符串列表,列表名称传统上是复数.怎么样ipAddresses?
您可以使用将字符串列表组合成单个分隔的字符串join.您可以使用换行符作为分隔符.例:
with open("output.txt", "w") as file:
    file.write("\n".join(ipAddresses))