Làm cách nào để xóa biểu tượng cảm xúc khỏi văn bản trong python?

Tôi đã tìm thấy mã này trong Python để xóa biểu tượng cảm xúc nhưng nó không hoạt động. Bạn có thể trợ giúp với các mã khác hoặc sửa lỗi này không?

Tôi đã quan sát thấy tất cả các emjois của mình bắt đầu bằng _______________ nhưng khi tôi cố gắng tìm kiếm _______________ thì tôi gặp lỗi ký tự không hợp lệ

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

Đây là lỗi

Traceback (most recent call last):
  File "test.py", line 52, in 
    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

Mỗi mục trong danh sách có thể là một từ ['This', 'dog', '\xf0\x9f\x98\x82', 'https://t.co/5N86jYipOI']

CẬP NHẬT. Tôi đã sử dụng mã khác này

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)

Nhưng điều này vẫn không xóa biểu tượng cảm xúc và hiển thị chúng. Bất kỳ manh mối tại sao lại như vậy?

Làm cách nào để xóa biểu tượng cảm xúc khỏi văn bản trong python?

Tôi đang cập nhật câu trả lời của mình cho câu hỏi này bởi @jfs vì câu trả lời trước của tôi không tính đến các tiêu chuẩn Unicode khác như tiếng Latinh, tiếng Hy Lạp, v.v. StackOverFlow không cho phép tôi xóa câu trả lời trước đó của mình do đó tôi đang cập nhật nó để khớp với câu trả lời được chấp nhận nhất cho câu hỏi

def remove_emoji(self, string):
        emoji_pattern = re.compile("["
                           u"\U0001F600-\U0001F64F"  # emoticons
                           u"\U0001F300-\U0001F5FF"  # symbols & pictographs
                           u"\U0001F680-\U0001F6FF"  # transport & map symbols
                           u"\U0001F1E0-\U0001F1FF"  # flags (iOS)
                           u"\U00002702-\U000027B0"
                           u"\U000024C2-\U0001F251"
                           "]+", flags=re.UNICODE)
        return emoji_pattern.sub(r'', string) 

Python có thể xử lý biểu tượng cảm xúc không?

Bạn cũng có thể triển khai biểu tượng cảm xúc bằng cách sử dụng mô-đun biểu tượng cảm xúc được cung cấp trong Python . Để cài đặt nó chạy như sau trong thiết bị đầu cuối. emojize() yêu cầu tên viết tắt CLDR được chuyển vào đó làm tham số. Sau đó, nó trả về biểu tượng cảm xúc tương ứng.

Mã cho biểu tượng cảm xúc trong Python là gì?

Mỗi biểu tượng cảm xúc được gán một mã Unicode duy nhất cho nó. Khi sử dụng Unicode với Python, thay thế "+" bằng "000" từ Unicode. Và sau đó đặt tiền tố Unicode bằng "\" . Ví dụ: U+1F605 sẽ được sử dụng làm \U0001F605.

Làm cách nào để xóa biểu tượng cảm xúc khỏi chuỗi trong JavaScript?

replace() , chuỗi. các phương thức trim() và RegExp hoạt động tốt nhất trong phần lớn các trường hợp. Trước hết, chúng tôi sử dụng replace() và RegExp để xóa bất kỳ biểu tượng cảm xúc nào khỏi chuỗi.