我有一个非常大的netflow数据集,看起来像这样:
192.168.1.3 www.123.com
192.168.1.6 api.123.com
192.168.1.3 blah.123.com
192.168.1.3 www.google.com
192.168.1.6 www.xyz.com
192.168.1.6 test.xyz.com
192.168.1.3 3.xyz.co.uk
192.168.1.3 www.blahxyzblah.com
....
我还有一个更小的通配符域数据集,如下所示:
*.xyz.com
api.123.com
...
我希望能够使用python搜索我的数据集并找到所有匹配项。因此,在上面的示例中,我将匹配:
192.168.1.6 www.xyz.com
192.168.1.6 test.xyz.com
192.168.1.6 api.123.com
我试图使用re
模块,但无法使其与任何内容匹配
for f in offendingsites:
for l in logs:
if re.search(f,l):
print(l)
您的违规站点不是正则表达式,而是shell通配符。但是,可以使用^{} 将它们转换为正则表达式:
您还可以使用^{} 进行通配符模式搜索
演示:
输出:
相关问题 更多 >
编程相关推荐