我是Python新手,無法用Python來思考這個問題。我有一個SMS消息的文本文件。我想要捕捉多行表述。在Python中確定行的模式
import fileinput
parsed = {}
for linenum, line in enumerate(fileinput.input()):
### Process the input data ###
try:
parsed[linenum] = line
except (KeyError, TypeError, ValueError):
value = None
###############################################
### Now have dict with value: "data" pairing ##
### for every text message in the archive #####
###############################################
for item in parsed:
sent_or_rcvd = parsed[item][:4]
if sent_or_rcvd != "rcvd" and sent_or_rcvd != "sent" and sent_or_rcvd != '--\n':
###########################################
### Know we have a second or third line ###
###########################################
但這裏是我撞牆的地方。我不確定包含我在這裏獲得的字符串的最佳方式是什麼。我很喜歡一些專家的意見。使用Python 2.7.3,但很樂意移動到3.
目標:從這些SMS中有一個充滿三行引號的人類可讀文件。
示例文本:
12425234123|2011-03-19 11:03:44|words words words words
12425234123|2011-03-19 11:04:27|words words words words
12425234123|2011-03-19 11:05:04|words words words words
12482904328|2011-03-19 11:13:31|words words words words
--
12482904328|2011-03-19 15:50:48|More bolder than flow
More cumbersome than pleasure;
Goodbye rocky dump
--
(是的,我可以告訴大家,這是一個關於便便的俳句,我試圖從過去5年的短信我最好的朋友的捕捉它們)
理想的結果是:
Haipu 3
2011-03-19
More bolder than flow
More cumbersome than pleasure;
Goodbye rocky dump
,如果你給例如輸入和預期的輸出 –
你能不能給我們輸入一個簡單的例子這將是helfpul文件,以及您期望作爲輸出的內容? thx – jrjc