发现python3中的字符串中有一个表情符号
我想使用Python3检查字符串是否只包含一个表情符号。 例如,有一个发现python3中的字符串中有一个表情符号,python,python-3.x,emoji,Python,Python 3.x,Emoji,我想使用Python3检查字符串是否只包含一个表情符号。 例如,有一个is_emoji函数检查字符串是否只有一个emoji def is_emoji(s): pass is_emoji("This works in Python 3: def is_emoji(s): emojis = "You could try using this emoji package. It's primarily used to convert escape sequences into un
is_emoji
函数检查字符串是否只有一个emoji
def is_emoji(s):
pass
is_emoji("This works in Python 3:
def is_emoji(s):
emojis = "You could try using this emoji package. It's primarily used to convert escape sequences into unicode emoji, but as a result it contains an up to date list of emojis.
from emoji import UNICODE_EMOJI
def is_emoji(s):
return s in UNICODE_EMOJI
def是表情符号:
通过
is_emoji(这在Python 3中有效:
def是表情符号:
emojis=“您可以尝试使用此软件包。它主要用于将转义序列转换为unicode表情符号,但因此它包含最新的表情符号列表
不过也有一些复杂的情况,因为有时两个unicode代码点可以映射到一个可打印的字形。例如,人类表情符号后跟“表情修饰符fitzpatrick type”应该修改前面表情符号的颜色;某些表情符号由“零宽度连接符”分隔应被视为单个字符。欢迎使用堆栈溢出!请添加一些您已经尝试过的代码。@OrangeFlash81谢谢,我尝试使用正则表达式,但我认为它没有模式,因此我用utf-8编码字符串,例如”◼️".编码(“utf-8”)
但是emojis没有固定的长度。为什么长度很重要?你考虑过编码版本是否有任何可以使用的模式吗?原则上你可以使用unicodedata
但是@jornsharpe有像b'\xf0\x9f\x98\x98'
和b'\xe2\x97\xbc\xef\xb8\x8f'
这样的模式,但是我怎么能理解呢只有一个表情符号?我觉得很好;)但我必须在那里键入所有表情符号:DSorry to necropost。这里的最后一个代码示例似乎不适用于组合的字符。例如,普通的一个符号,它是数字一和键帽修饰符的组合?有一种更好的方法,无需编写自定义函数。使用表情符号包!回答的第二部分正在使用软件包emoji
。。这将检查字符是否为emoji。是否有任何方法可以检查整个字符串是否包含emoji?请注意,UNICODE\u emoji有4个键表示支持的语言。这意味着在UNICODE\u emoji['en']中使用return s而不是上面的return语句。