我试图把一段用印地语写的段落分成句子。问题是,不是这一段中的所有句子都以“|”结尾,所以使用split()的想法失败了。有谁能推荐一些解决方案吗?在
以下是段落:
विकिपीडिया सभी विषयों पर प्रामाणिक और उपयोग, परिवर्तन व पुनर्वितरण के लिए स्वतन्त्र ज्ञानकोश बनाने का एक बहुभाषीय प्रकल्प है। यह यथासम्भव निष्पक्ष दृष्टिकोण वाली सूचना प्रसारित करने के लिए कृतसंकल्प है। सर्वप्रथम अंग्रेज़ी विकिपीडिया जनवरी 2001 में आरम्भ किया गया था, और हिन्दी विकिपीडिया का शुभारम्भ जुलाई 2003 में हुआ। सहायता पृष्ठ पर जाएं और प्रयोगस्थल में प्रयोग करके देखें कि आप स्वयं किसी लेख को कैसे परिवर्तित कर सकते हैं।
这是我的代码:
import codecs
class Tokenizer():
def __init__(self,text):
self.text=text.decode('utf-8')
self.clean_text()
self.sentences=[]
self.final_list=[]
self.bsentences=[]
self.asentences=[]
self.final_sentences=self.bsentences+self.asentences
def readFromFile(self,filename):
f=codecs.open(filename,encoding='utf-8')
self.text=f.read()
self.clean_text()
def print_sentences(self,sentences):
for i in self.sentences:
print i.encode('utf-8')
def cleanText(self):
text=self.text
text=re.sub(r'(\d+)',r'',text)
text=text.replace(u',','')
text=text.replace(u'"','')
text=text.replace(u'"','')
text=text.replace(u':','')
text=text.replace(u"'",'')
text=text.replace(u"‘‘",'')
text=text.replace(u"’’",'')
text=text.replace(u"''",'')
text=text.replace(u".",'')
self.text=text
def getSentence(self):
text=self.text
self.bsentences=text.split(u"।")
sw=codecs.open("stopwords.txt",encoding='utf-8')
stopwords=[x.strip() for x in sw.readlines()]
sentences=[s for s in sw.readlines() if s in enumerate(stopwords)]
return self.final_sentences
t=Tokenizer('')
t.readFromFile('sample.txt')
t.getSentences()
t.print_sentences()
相关问题 更多 >
编程相关推荐