2016-01-22 38 views
-3

我有一個包含32個文檔的文本文件,我希望Python能夠注意到它。因此,我正在尋找一個標記化過程來檢測新文檔何時開始和結束。在Python中進行令牌化

enter image description here

正如我們可以在圖像中看到,每一個文檔具有組合開始:32個文檔數。在圖像中,我只是顯示第二個文檔的混亂。下一份文件將從32份文件中的3份開始,依此類推。任何人都可以幫助我開發一個簡單的代碼,以便Python認識到有32篇文章?

+0

你有什麼企圖這麼遠嗎?請向我們展示您的代碼,並澄清您遇到的問題。請直接將您的代碼和示例文本添加到您的問題中,而不是發佈屏幕截圖。它使其他人更容易複製您的問題並幫助調試。 – SiHa

+0

嘿,謝謝你的回答。我剛開始學習Python,因此我沒有任何代碼來解決這個問題。如果可能,我正在尋求一些指導。儘管如此,我仍會繼續嘗試,並在我得到某些東西時發佈代碼。歡呼 –

回答

2

一個去了解這樣:

  1. 逐行讀取文件中的行
  2. 檢查每一行是否匹配X of Y documents
  3. 如果是這樣,請啓動一個包含該行的新列表,並將之前的列表添加到文檔列表中。
  4. 如果沒有,則將該行添加到已開始列表中
  5. 轉到2.,直到到達文件末尾。

因此,舉例來說:

import re 
sections = [] 
current = [] 
with open("myfile.txt") as f: 
    for line in f: 
     if re.search(r"(?i)\d+ of \d+ documents", line): 
      sections.append("".join(current)) 
      current = [line] 
     else: 
      current.append(line) 
    if current: 
     sections.append("".join(current)) 
+0

我檢查它的作品的方式是通過寫作print(len(節))給我32作爲結果。非常感謝! –