所以我必須開始\u
其次是各種形式的4個字符的十六進制串的發生(他們不是Unicode對象,但在數據實際字符串,這就是爲什麼我想清理數據),並希望用空白替換那些事件。正則表達式表達了一個特定的模式
示例文本文件:Hello \u2022 Created, reviewed, \u00e9executed and maintained
對於如:會有串\u2022
和\u00e9
的出現,我想找到\u
,並用4個字符子2022
和00e9
跟在後面的是一起拔出。我正在尋找適合此模式的正確表達式。
示例代碼:
import json
import io
import re
files = glob('Candidate Profile Data/*')
for file_ in files:
with io.open(file_, 'r', encoding='us-ascii') as json_file:
json_data = json_file.read().decode()
json_data = re.sub('[^\x00-\x7F]+',' ',json_data)
json_data = json_data.replace('\\n',' ')
json_data = re.sub(r'\\u[0-9a-f]{,4}',' ',json_data)
print json_data
json_data = json.loads(json_data)
print(json_data)
如果我得到它的權利,你需要從字符串中刪除Unicode字符? –
@LeonardoChirivì不,這就是爲什麼我明確提到它們不是實際的unicode字符,而是以數據本身的字符串形式。 –