Python 从字符串中删除unicode

Python 从字符串中删除unicode,python,string,unicode,Python,String,Unicode,我正在尝试使用Unicode从阿拉伯语字符串中删除特殊字符,这是我从以下链接获得的: 这是我的代码: TATWEEL = u"\u0640" text = 'الســلام عليكــم' text.replace(TATWEEL, '') print(text) 但是我试过了,但没有成功(它打印相同的字符串而不删除字符) 这是“  ”这个特殊的角色 我正在使用Python3字符串的替换方法不会更改它所调用的字符串;它返回一个替换了指定字符的新字符串 此代码符合您的要求: TATWE

我正在尝试使用Unicode从阿拉伯语字符串中删除特殊字符,这是我从以下链接获得的:

这是我的代码:

TATWEEL = u"\u0640"
text = 'الســلام عليكــم'

text.replace(TATWEEL, '')
print(text)
但是我试过了,但没有成功(它打印相同的字符串而不删除字符)

这是“  ”这个特殊的角色


我正在使用Python3

字符串的
替换
方法不会更改它所调用的字符串;它返回一个替换了指定字符的新字符串

此代码符合您的要求:

TATWEEL = u"\u0640"
text = 'الســلام عليكــم'

text2 = text.replace(TATWEEL, '')
print(text2)
要获得预期的准确结果,请使用以下命令:

text = text.replace(TATWEEL, '')
print(text)

如果文本可能包含多个unicode元素,则应按如下方式选择正则表达式:

import re
TATWEEL = u"\u0640"
text = 'الســلام عليكــم'

unicode_removed_text = re.sub(TATWEEL, '', text)

当你说它不起作用时,你是什么意思?您是否收到错误或您使用的电脑已被分解?否它打印相同的文本而不删除字符。如果@user8393084对您有效,请接受它作为答案。这比
替换
更好吗?请参阅此;关于在何处使用replace()和在何处使用re.sub()的解释很好。第一个答案是如果你可以使用
replace
,那么就使用itI。我仍然不理解你文章中的基本原理“如果文本可能包含多个unicode元素,那么你应该使用正则表达式”