相关疑难解决方法(0)

如何防止Unicode字符在JavaScript中从HTML呈现为表情符号?

我正在从FileFormat.Info的搜索中找到特殊字符的Unicode .

某些字符呈现为经典的黑白字形,例如⚠(警告标志\u26A0⚠).这些是首选,因为我可以将CSS样式(如颜色)应用于它们.

警告标志符号的图像

其他人正在渲染为更新的卡通表情符号,例如hour(沙漏,\u231B⌛).这些不是优选的,因为我不能完全定型它们.

沙漏表情符号的图像

看来浏览器正在进行此更改,因为我能够在Mac Firefox上看到沙漏字形,而不是Mac Chrome或Mac Safari.

有没有办法强制浏览器显示旧的(单调单调)版本?

更新:看来(从下面的评论)有一个文本显示选择,FE0E,可用来执行文本VS-表情符号.选择器作为后缀连接到字符的代码上,没有空格,例如⌛︎HTML十六进制或\u231B\uFE0EJS.但是,它并没有被所有浏览器(例如Chrome和Edge)所尊重.

html javascript css unicode emoji

105
推荐指数
5
解决办法
4万
查看次数

从Python中的字符串中删除表情符号

我在Python中发现了这个用于删除表情符号的代码,但它无效.你能帮忙解决其他问题吗?

我已经观察到我的所有emjois都开始了\xf但是当我尝试搜索时str.startswith("\xf")我得到了无效的字符错误.

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

这是错误:

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
Run Code Online (Sandbox Code Playgroud)

列表中的每个项目都可以是单词 ['This', 'dog', '\xf0\x9f\x98\x82', 'https://t.co/5N86jYipOI']

更新:我使用了其他代码:

emoji_pattern=re.compile(ur" " " [\U0001F600-\U0001F64F] # emoticons \
                                 |\
                                 [\U0001F300-\U0001F5FF] # symbols & pictographs\
                                 |\
                                 [\U0001F680-\U0001F6FF] # transport & map symbols\
                                 |\
                                 [\U0001F1E0-\U0001F1FF] …
Run Code Online (Sandbox Code Playgroud)

python string unicode special-characters emoji

25
推荐指数
12
解决办法
5万
查看次数

从Unicode字符串中正确提取Emojis

我在Python 2中工作,我有一个包含emojis以及其他unicode字符的字符串.我需要将其转换为列表,其中列表中的每个条目都是单个字符/表情符号.

x = u'xyz'
char_list = [c for c in x]
Run Code Online (Sandbox Code Playgroud)

所需的输出是:

['', '', 'x', 'y', 'z', '', '']
Run Code Online (Sandbox Code Playgroud)

实际输出是:

[u'\ud83d', u'\ude18', u'\ud83d', u'\ude18', u'x', u'y', u'z', u'\ud83d', u'\ude0a', u'\ud83d', u'\ude0a']
Run Code Online (Sandbox Code Playgroud)

如何实现所需的输出?

python unicode python-2.x emoji

21
推荐指数
2
解决办法
5512
查看次数

使用python3查找表情符号的宽度

我尝试使用 python 中的模式打印字母“A”

def printA(length,height,symbol):
    a = [[" " for i in range(length)] for i in range(height)]
    for i in range(height):
        for j in range(length):
            if j == 0 or i == 0 or i == height // 2 or j == length - 1:a[i][j] = symbol
    return a
Run Code Online (Sandbox Code Playgroud)

它适用于普通字符,如 *,/+,-,#,$,% .. etc.,

输出:普通字符

#######
#     #
#     #
#######
#     #
#     #
#     #
Run Code Online (Sandbox Code Playgroud)

表情符号


     
     

     
     
     
Run Code Online (Sandbox Code Playgroud)

如果我能找到表情符号的长度,那么我就可以将空格更改为表情符号的长度,这样就不会发生这个问题,有什么办法可以做到这一点

注意:以上代码仅适用于字符而不适用于字符串

编辑:
根据snakecharmerb的回答,它仅适用于打印字符,A但是当我尝试A多次打印ie 的序列时,它只是将表情符号放错了位置

示例:我尝试打印 AAAAA …

python unicode python-3.x emoji

8
推荐指数
1
解决办法
673
查看次数

在python中使用re删除unicode表情符号

我试图从unicode tweet文本中删除表情符号,并使用python 2.7打印出结果

myre = re.compile(u'[\u1F300-\u1F5FF\u1F600-\u1F64F\u1F680-\u1F6FF\u2600-\u26FF\u2700-\u27BF]+',re.UNICODE)
print myre.sub('', text)
Run Code Online (Sandbox Code Playgroud)

但似乎几乎所有的字符都从文本中删除.我从其他帖子中查了几个答案,不幸的是,这些都没有在这里工作.我在re.compile()中做错了吗?

这是一个删除所有字符的示例输出:

“   '   //./” ! # # # …
Run Code Online (Sandbox Code Playgroud)

python regex unicode tweets emoji

7
推荐指数
1
解决办法
1万
查看次数

与区域指标字符类匹配的python正则表达式

表情符号中的标志由一对区域指示符号表示.我想写一个python正则表达式在一串表情符号标志之间插入空格.

例如,这个字符串是两个巴西标志:

u"\U0001F1E7\U0001F1F7\U0001F1E7\U0001F1F7"
Run Code Online (Sandbox Code Playgroud)

这将呈现如下:

我想在任何一对区域指标符号之间插入空格.像这样的东西:

re.sub(re.compile(u"([\U0001F1E6-\U0001F1FF][\U0001F1E6-\U0001F1FF])"),
       r"\1 ", 
       u"\U0001F1E7\U0001F1F7\U0001F1E7\U0001F1F7")
Run Code Online (Sandbox Code Playgroud)

这将导致:

u"\U0001F1E7\U0001F1F7 \U0001F1E7\U0001F1F7 "
Run Code Online (Sandbox Code Playgroud)

但是那段代码给了我一个错误:

sre_constants.error: bad character range
Run Code Online (Sandbox Code Playgroud)

一个提示(我认为)出现了什么问题,以下内容显示\ U0001F1E7在正则表达式中变为两个"字符":

re.search(re.compile(u"([\U0001F1E7])"),
          u"\U0001F1E7\U0001F1F7\U0001F1E7\U0001F1F7").group(0)
Run Code Online (Sandbox Code Playgroud)

这导致:

u'\ud83c'
Run Code Online (Sandbox Code Playgroud)

可悲的是,我对unicode的理解太弱,无法取得进一步的进展.

编辑:我在Mac上使用python 2.7.10.

python regex unicode

5
推荐指数
1
解决办法
524
查看次数

在python3中查找字符串中有一个表情符号

我想使用Python 3 is_emoji检查字符串是否只包含一个表情符号.例如,有一个函数检查字符串是否只有一个表情符号.

def is_emoji(s):
    pass

is_emoji("") #True
is_emoji("??") #False
Run Code Online (Sandbox Code Playgroud)

我尝试使用正则表达式但emojis没有固定长度.例如:

print(len("??".encode("utf-8"))) # 6 
print(len("".encode("utf-8"))) # 4
Run Code Online (Sandbox Code Playgroud)

python python-3.x emoji

4
推荐指数
2
解决办法
1万
查看次数

如何在Python中仅选择包含表情符号和表情符号的行?

我在 Python Pandas 中有 DataFrame,如下所示:

sentence
------------

I like it
+1
One :-) :)
hah
Run Code Online (Sandbox Code Playgroud)

我需要仅选择包含表情符号或表情符号的行,因此我需要如下所示的内容:

sentence
------------

+1
One :-) :)
Run Code Online (Sandbox Code Playgroud)

我怎样才能在Python中做到这一点?

python nlp emoticons emoji sentiment-analysis

4
推荐指数
1
解决办法
710
查看次数