我正在尝试标记具有以下两种模式的字符串:
为此,我尝试了
word_tokenize()
函数来自 nltk
( doc )。但是,当涉及表情符号时,它不会拆分连续的实体。例如,
from nltk.tokenize import word_tokenize
word_tokenize("Hey, 😍🔥")
输出:
['Hey', ',', '😍🔥']
我想得到:
['Hey', ',', '😍', '🔥']
和
word_tokenize("surprise💥 !!")
输出:
['surprise💥', '!', '!']
我想得到
['surprise', '💥', '!', '!']
因此,我在想也许使用特定的正则表达式模式可以解决问题,但我不知道使用什么模式。
最佳答案
尝试使用 TweetTokenizer
from nltk.tokenize.casual import TweetTokenizer
t = TweetTokenizer()
>>> t.tokenize("Hey, 😍🔥")
['Hey', ',', '😍', '🔥']
关于python - 标记与单词相邻的表情符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57679668/