无法摆脱所有的表情符号


Minions
2025-03-17 08:41:42 (5天前)


通过测量

聪明
</跨度>
鞋垫&amp;实时AI辅导。改善您的技术和每次跑步都会提升你的表现。\ n很快就会有Kickstarter!‘,‘triing’:’增强的珠宝? ?蒙特利尔。加拿大更多

能源
</跨度>
! #goAYO来自:‘,‘wearyourowntechs’:’带给您最新趋势,当前产品和可穿戴技术的评论。了解它们如何改善您的生活和生活方式

2 条回复
  1. 0# 老夫的少女心吖 | 2019-08-31 10-32



    “表情符号”的含义没有技术定义。各种字形可用于呈现可打印字符,符号,控制字符等。对你来说,似乎是一个“表情符号”可能是其他人的正常脚本的一部分。



    你可能想要做的是看看

    Unicode类别

    每个字符并筛选出各种类别。虽然这不能解决“表情符号” - 定义问题本身,但你可以更好地控制你实际做的事情而不删除,例如,字面上所有地球的2/3所使用的语言字符。



    您可以过滤除小写和大写字母(和数字)之外的所有内容,而不是过滤掉某些类别。但是,请注意?不是“googly眼睛表情符号”而是

    CYRILLIC SMALL LALLTER DOUBLE MONOCULAR O.

    ,这是一个普通的小写字母,数百万人。



    例如:




    1. import unicodedata

    2. s = “?Wife ? Homeschooling Mom to 5 ? ? D Y I lover ? ? Small town living in MN. ?”

    3. Just filter category symbol

      t = ‘’.join(c for c in s if unicodedata.category(c) not in (‘So’, ))
      print(t)

    4. </code>


    …结果是




    1. Wife ? Homeschooling Mom to 5 ? D Y I lover ? Small town living in MN.

    2. </code>


    这可能不是表情符号,但是

    ?

    从技术上讲,它是一种标点符号。所以也要过滤掉它



    1.   # Filter symbols and punctuations. You may want 'Cc' as well,
    2. to get rid of control characters. Beware that newlines are a

      form of control-character.

      t = ‘’.join(c for c in s if unicodedata.category(c) not in (‘So’, Po’))
      print(t)

    3. </code>


    你得到了




    1. Wife Homeschooling Mom to 5 D Y I lover Small town living in MN

    2. </code>

登录 后才能参与评论