2017-05-15 1 views
2

私はこのような一つのテキスト:テキスト前

enter image description here

私は浙江省のテキストをトークン化する必要があります:行ごとと文1つの空の行の最後に一言。 問題は、一部の文章に「。」がないことです。最後に。だから私は "を置く必要があります。" nuの句読点がある場合の改行。

​​
+0

少なくともいくつかの最初の行で、正確に答えがどうなるべきかを見せてもらえますか? – Bohdan

+0

Zatwierdzenie/nprotokołu\ n z \ n popnzedniego \ n posedzenia \ n:\ n patrz \ nprotokół\ n。 \ n \ nSkład\ n –

答えて

0

私はそれがEuroparlのために働くのか分からないが、nltkはポーランドのための文章セグメンテーションモデルが含まれています

import nltk.data 
tokenizer = nltk.data.load('tokenizers/punkt/polish.pickle') 

text = u'''Unia Europejska, UE – gospodarczo-polityczny związek 28 
demokratycznych państw europejskich. Unia powstała 1 listopada 1993 na 
mocy podpisanego 7 lutego 1992 traktatu z Maastricht jako efekt 
wieloletniego procesu integracji politycznej, gospodarczej i 
społecznej. Korzenie współczesnej integracji europejskiej sięgają 
okresu powojennego i ograniczały się do 6 państw 
zachodnioeuropejskich.''' 

ss = tokenizer.tokenize(text) 

これはウィキペディアからテキストに正常に動作します:

>>> ss 
[u'Unia Europejska, UE \xe2\x80\x93 gospodarczo-polityczny ...', 
u'Unia powsta\xc5\x82a 1 listopada 1993 na\nmocy podpisanego ...', 
u'Korzenie wsp\xc3\xb3\xc5\x82czesnej integracji europejskiej ...'] 
1

あなたのコードはすでにかなり閉じていた:

input = "europarltokenized.txt" 
output = "europarlpreprocessing.txt" 

with open(input, "r") as f, open(output, "w") as f2: 
    for line in f: 
     if not line.startswith("<CHAPTER ID="): 
      sl = line.split() 
      for token in sl: 
       f2.write(token + "\n") 
      if not sl[-1] in [".", "?", "!"]: 
       f2.write(".\n") 
      f2.write("\n") 
関連する問題