从字符串中删除unicode

时间:2018-02-13 05:44:26

标签: python string unicode

我正在尝试使用我从此链接获得的Unicode中删除阿拉伯字符串中的特殊字符: https://www.fileformat.info/info/unicode/char/0640/index.htm

这是我的代码:

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

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

但是我尝试了它并且不起作用(它打印相同的字符串而不删除字符)

这是特殊字符''

enter image description here

我正在使用Python3

2 个答案:

答案 0 :(得分:7)

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

此代码可以满足您的需求:

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

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

要获得您期望的确切结果,请使用:

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

答案 1 :(得分:1)

如果文本可能包含多个unicode元素,那么您应该使用以下正则表达式:

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

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