如果我运行以下代码:
from nltk.tokenize import word_tokenize
text = "God is Great! I won a lottery."
print(word_tokenize(text))
我得到以下输出:
['God', 'is', 'Great', '!', 'I', 'won', 'a', 'lottery', '.']
在这种情况下,列表中的标记以与输入句子中的标记相同的顺序出现。
但是,它们始终与输入句子中的顺序相同吗?
答案 0 :(得分:0)
是的,它们始终与输入句子中的顺序相同。
word_tokenize方法调用re.findall。有关re.findall的正则表达式文档指出以下内容。
以字符串列表形式返回字符串中所有不重复的模式匹配项。从左到右扫描该字符串,并按照找到的顺序返回匹配项。
参考文献:
https://www.nltk.org/_modules/nltk/tokenize/punkt.html#PunktLanguageVars.word_tokenize(在此页面上搜索word_tokenize)
https://docs.python.org/3/library/re.html(在此页面上查找所有搜索内容)
https://docs.python.org/2/library/re.html(在此页面上搜索所有查找内容)