我想确切地知道在这个分词器中使用指定的模式对文本做了什么:
from nltk.tokenize import RegexpTokenizer
tokenizer = RegexpTokenizer(r'[a-zA-Z]w+'?w*')
text_token = text.apply(tokenizer.tokenize)
其中"文本"是一个熊猫系列,每一行都是一个句子。
我特别想了解 r'[a-zA-Z]\w+\'?\w'* 部分。 细节(每个组件的解释(将不胜感激。
这称为正则表达式或正则表达式。在
[a-zA-Z]w+'?w*
[a-zA-Z]
代表从a
到z
或从A
的单个字符 到Z
w+
匹配任何重复的单词字符,其中w
[a-zA-Z0-9_]
和+
符号的速记允许其重复'?
与角色'
字面意思相匹配w*
又是单词字符,从一次重复到无限次
例如,字符串Random01'example
与此表达式匹配。这个网站也很好地解释了它。