0
有一些代碼來找到一個字符串中的幾個匹配的術語,在我的情況下,一個日誌文件,我試圖輸出實例到一個csv的工作,但只有時。如果我有太多的變量,它似乎打破並輸出一個空白的CSV,否則它實際上工作。Python re.findall輸出到CSV只有有時
作品:
z = re.findall("(?<=ID\=)\w+", resp)
rec = re.findall("(?<=RECEIVED\=)\w+", resp)
with open('/out.csv','w') as file:
for x,y in zip(z,rec):
file.write(x + ',' +y)
file.write('\n')
給了我一個空白CSV:
i = re.findall("(?<=ID\=)\w+", resp)
rec = re.findall("(?<=RECEIVED\=)\w+", resp)
da = re.findall("(?<=DA\=)\w+", resp)
oa = re.findall("(?<=OA\=)\w+", resp)
st = re.findall("(?<=DELIVERED\=)\w+", resp)
pr = re.findall("(?<=PRICE\=)\w+", resp)
net = re.findall("(?<=NETWORK\=)\w+", resp)
cn = re.findall("(?<=COUNTRY\=)\w+", resp)
gw = re.findall("(?<=GATEWAY\=)\w+", resp)
msg = re.findall("(?<=MSG\=)\w+", resp)
file = (i + ',' + rec + ',' + da + ',' + oa + ',' + st + ',' + pr + ',' + net + ',' + cn + ',' + gw + ',' + msg)
with open('out.csv','w') as file:
for a,b,c,d,e,f,g,h,j,k in zip(i,rec,da,oa,st,pr,net,cn,gw,msg):
file.write(a + ',' + b + ',' + c + ',' + d + ',' + e + ',' + f + ',' + g + ',' + h + ',' + j + ',' + k)
file.write('\n')
也許我是在想這或做錯誤的方式。基本上希望輸出成爲csv格式的這些輸出。如果我正在愚蠢地隨意噓我。
嗯,這似乎是一個更好的辦法,不是我做的,但最好的一切都是爲了給我玩了是文字打印:我 REC 達 OA ST pr net cn gw msg在csv vs變量本身的數據 – JSimonsen
是的,這是完全有效的。看起來我的數據非常具體,有時會打破它。我只需要精確定義我的正則表達式,以便它不尋找其他與之相匹配的東西。謝謝! – JSimonsen
不客氣! – Albo