我正在研究一个基于Python/NLTK的NLP项目,其中包含非英语unicode文本。为此,我需要在句子中搜索unicode字符串。在
有一个.txt文件与一些非英语unicode语句一起保存。使用NLTKpunkSentenceTokenizer我将它们断开并保存在python列表中。在
sentences = PunktSentenceTokenizer().tokenize(text)
现在我可以遍历列表并分别获得每个sentence
。在
我需要做的是检查sentence
并确定哪个单词具有给定的unicode字符。在
示例-
^{pr2}$假设上面的文本是非英语unicode,我需要找到以GF
结尾的单词,然后返回整个单词(可能是该单词的索引)。在
search = 'SDFGF'
类似地,我需要找到以BB
开头的单词。在
search2 = 'BBBSDC'
如果我没听错,你只需把句子分成单词,在每个单词上循环,检查句子是否以所需字符结尾或开头,例如:
sentence.split()
可能会被nltk.tokenize.word_tokenize(sentence)
之类的东西代替更新,关于评论:
^{pr2}$enumerate
函数可用于给每个单词一个数字,如下所示:如果执行相同的循环,但保留索引:
…您可以使用索引来获取下一项或上一项:
您需要处理匹配第一个或最后一个单词(
if r_idx == 0
,if r_idx == len(sentence)
)的情况相关问题 更多 >
编程相关推荐