如何将花哨/艺术的 unicode 文本转换为 ASCII?

Mar*_*tin 5 python unicode ascii python-3.x

我有一个像“”这样的 unicode 字符串,并且想将其转换为 ASCII 形式“thug life”。

\n

我知道我可以通过Python实现这一点

\n
import unidecode\nprint(unidecode.unidecode(\' \'))\n// thug life\n
Run Code Online (Sandbox Code Playgroud)\n

但是,这也会将我想保留的其他 unicode 字符(例如中文/日文字符、表情符号、重音字符等)进行 asciify。

\n

有没有办法检测这些类型的“艺术”unicode 字符?

\n

更多示例:

\n

\n

\n

\n

\xef\xbd\x94\xef\xbd\x88\xef\xbd\x95\xef\xbd\x87 \xef\xbd\x8c\xef\xbd\x89\xef\xbd\x86\xef\xbd\x85

\n

感谢您的帮助!

\n

Jos*_*efZ 6

import unicodedata\nstrings = [\n  \' \',\n  \' \',\n  \' \',\n  \' \',\n  \'\xef\xbd\x94\xef\xbd\x88\xef\xbd\x95\xef\xbd\x87 \xef\xbd\x8c\xef\xbd\x89\xef\xbd\x86\xef\xbd\x85\']\nfor x in strings:\n  print(unicodedata.normalize( \'NFKC\', x), x)\n
Run Code Online (Sandbox Code Playgroud)\n

输出.\\62803325.py

\n
\n
thug life  \nthug life  \nthug life  \nthug life  \nthug life \xef\xbd\x94\xef\xbd\x88\xef\xbd\x95\xef\xbd\x87 \xef\xbd\x8c\xef\xbd\x89\xef\xbd\x86\xef\xbd\x85\n
Run Code Online (Sandbox Code Playgroud)\n
\n

资源

\n\n