零宽空格
在处理从浏览器控制台中保存的文本时候发现使用replace(),strip(),startWith()等其他代码均不能删除掉文本中的空格,就很疑惑这到底是个什么字符,就用utf-8编码进行了尝试。
结果是这样的:“\xe2\x80\x8bundefinedn”
发现后面的undefined都不会被编码了,经过查阅和了解发现,原来文本中存在零宽空格,而零宽空格是一种特殊的Unicode字符,通常用于在不影响可见排版的情况下插入空白或分隔字符。
附上py处理零宽空格的代码,有更好的办法或建议,欢迎补充和指导!!!
newf = open('new.txt','w',encoding='utf-8')
with open("_human_4062e._human_a678.log",'r',encoding='utf-8') as f:
for i in f.readlines():
i = i.replace(' ','')
if (i.strip().replace(' ','').replace('\n','').endswith('fined')):
continue
elif (i.strip().replace(' ','').replace('\n','')[-1].isdigit()):
continue
elif (i.strip().replace(' ','').replace('\n','').endswith('fault')):
continue
else:
newf.write(i)