2017-05-05 20 views
-1

在文本文件中匹配模式我是新來python.My文本文件具有以下信息打印字符串「圖片」連同在Python

15:50:12 RECID: C642 SORD=000000000 Image=000000001 
15:50:12 STEP 2: BUILD ICC KEY MAINTENANCE 
15:50:12 RECID: C642 Image=000000000 EORD=000000007 
15:50:12 STEP 3: COUNT OF RECORDS UDPATED 
02:26:12 CPSE0152E 02.26.13 IS-0001 SS-BSS SSU-BSS SE-008965 Image -UE027A0 
02:26:12 010000A ABC-HS52             
02:26:12 HS52 DEF-hs52    

5號線(2時26分12秒),將包含「 SE - 「和」圖片「-XXXXXXX」其中XXXXXXX =類型圖片轉儲爲已編碼。 下一行會「ABC -XXXX」其中XXXX =段名 3號線應該有「DEF -XXXX」。我們只需要這3條線。

圖片」關鍵字可以occure這麼多的地方,但我想隨着下一行有信息「ABC-XXXX」搜索「圖像」的名字和「DEF-XXXX」 和打印在接下來的2行文字

我的輸出應該是

02:26:12 CPSE0152E 02.26.13 IS-0001 SS-BSS SSU-BSS SE-008965 Image-UE027A0 
02:26:12 010000A ABC-HS52             
02:26:12 HS52 DEF-hs52 
+1

儘可能避免使用正則表達式。 – Dinei

回答

1

這裏有一個工作的例子,會得到你所需要的。假設你的輸入文件被稱爲「輸入」。

with open("input", "r") as file: 
    output = "" 

    for line in file.readlines(): 
     if "Image" in line: 
      output += line 
     elif "ABC" in line and "Image" in output: 
      output += line 
     elif "DEF" in line and "ABC" in output: 
      output += line 
     else: 
      output = "" 

    print(output) 
+0

非常感謝尼克尼克工作正常 – Venkatesan