如何替换 Unicode 的一部分?

问题描述 投票:0回答:1

如何替换 Unicode 的一部分?比如D800到DB7F?我已经向内置的 replit ai 寻求了一些帮助,但它没有做太多事情。这是最好的结果:

text = =('there's more code to link this var to a file but thats not important')
newtext = text.replace(r'\uE000', '#').replace(r'\uF8FF', '#').replace(r'\uDC00', '#').replace(r'\uDFFF', '#').replace(r'\uD800', '#').replace(r'\uDB7F', '#').replace(r'\uDB80', '#').replace(r'\uDBFF', '#')

我尝试询问 AI(replit 内置)、replit 社区中的其他人,并在 google 上搜索,但我什么也没找到。

python replace unicode replit
1个回答
1
投票

使用正则表达式来匹配范围:

import re

text = 'test\udc00\udc01\udc02\uf8ff\ue000test'
result = re.sub(r'[\ud800-\udfff\ue000\uf8ff]', '#', text)
print(result)

输出:

test#####test
© www.soinside.com 2019 - 2024. All rights reserved.