[Python] removing emojis from a string in Python

Discussão em 'Python' iniciado por Stack, Maio 26, 2025.

  1. Stack

    Stack Membro Participativo

    I found this code in Python for removing emojis but it is not working. Can you help with other codes or fix to this?

    I have observed all my emjois start with \xf but when I try to search for str.startswith("\xf") I get invalid character error.

    emoji_pattern = r'/[x{1F601}-x{1F64F}]/u'
    re.sub(emoji_pattern, '', word)


    Here's the error:

    Traceback (most recent call last):
    File "test.py", line 52, in <module>
    re.sub(emoji_pattern,'',word)
    File "/usr/lib/python2.7/re.py", line 151, in sub
    return _compile(pattern, flags).sub(repl, string, count)
    File "/usr/lib/python2.7/re.py", line 244, in _compile
    raise error, v # invalid expression
    sre_constants.error: bad character range


    Each of the items in a list can be a word ['This', 'dog', '\xf0\x9f\x98\x82', 'https://t.co/5N86jYipOI']

    UPDATE: I used this other code:

    emoji_pattern=re.compile(ur" " " [\U0001F600-\U0001F64F] # emoticons \
    |\
    [\U0001F300-\U0001F5FF] # symbols & pictographs\
    |\
    [\U0001F680-\U0001F6FF] # transport & map symbols\
    |\
    [\U0001F1E0-\U0001F1FF] # flags (iOS)\
    " " ", re.VERBOSE)

    emoji_pattern.sub('', word)


    But this still doesn't remove the emojis and shows them! Any clue why is that? [​IMG]

    Continue reading...

Compartilhe esta Página