python - 标记与单词相邻的表情符号

标签 python nlp nltk

我正在尝试标记具有以下两种模式的字符串:

  • 连续的表情符号,例如“嘿,😍🔥”
  • 与单词相邻的表情符号,例如“惊喜💥 !!”

  • 为此,我尝试了 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/

    相关文章:

    python - 使用 PM2 启动我的 Python 应用程序?

    python - pandas 在 groupby 级别 2 总和或平均条件上删除行

    python - 获取 IndexError : tuple index out of range

    python - 值错误: Unexpected character found when decoding 'true' while converting IOB to JSONL for SpaCy

    python - 如何使用语义自动标记一组单词?

    python - NLTK 其他语言词性标注器

    python - 有没有办法让用户定义的 Python 函数像内置语句一样运行?

    java - 如何从Weka获取词频值?

    nlp - 在发送到 RNN 之前,token <pad>, <unknown>, <go>, <EOS> 的词向量应该是什么?

    python 3解决数据框问题