用Regex Tokenizer进行Tokenize

问题描述 投票:1回答:2

我想用regex tokenizer标记下面的句子

MOST INTERESTED IN NUT BUTTERS

当我将我的tokenizer定义为

tokenizer = RegexpTokenizer(r'\w+')          

我输出为

['MOST', 'INTERESTED', 'IN', 'NUT', 'BUTTERS']

我想要的输出是

['MOST', 'INTERESTED', 'IN', 'NUT BUTTERS']

我希望NUT BUTTER成为一个元素,我不知道使用什么正则表达式或\ w +

python regex nltk tokenize
2个回答
0
投票

如果你想使用正则表达式解决方案,你将不得不制作一个包含空格的单词列表,这些空格必须作为一个提取,并构建你的正则表达式:

word space1|word space2|word space3|...|word spaceN|\w+

对于你的例子它变成:

NUT BUTTERS|\w+

0
投票

试试split()吧。

>>> str = 'MOST INTERESTED IN NUT BUTTERS'
>>> str.split(' ', 3) # 3 tells the number of splits it should do.
['MOST', 'INTERESTED', 'IN', 'NUT BUTTERS']
© www.soinside.com 2019 - 2024. All rights reserved.