python去除BOM头\ufeff等特殊字符- 凌度- 博客园
文章推薦指數: 80 %
1.\ufeff 字节顺序标记去掉\ufeff,只需改一下编码就行,把UTF-8编码改成UTF-8-sigwith open(file_path, mode='r', encodin.
首页
新闻
博问
专区
闪存
班级
我的博客
我的园子
账号设置
简洁模式...
退出登录
注册
登录
python去除BOM头\ufeff等特殊字符
1.\ufeff字节顺序标记
去掉\ufeff,只需改一下编码就行,把UTF-8编码改成UTF-8-sigwithopen(file_path,mode='r',encoding='UTF-8-sig')asf:s=f.read()
2.\xa0是不间断空白符
\xa0是不间断空白符 我们通常所用的空格是\x20,是在标准ASCII可见字符0x20~0x7e范围内。
而\xa0属于latin1(ISO/IEC_8859-1)中的扩展字符集字符,代表空白符nbsp(non-breakingspace)。
latin1字符集向下兼容ASCII(0x20~0x7e)。
通常我们见到的字符多数是latin1的,比如在MySQL数据库中。
去除\xa0str.replace(u'\xa0',u'')
3.\u3000是全角的空白符 根据Unicode编码标准及其基本多语言面的定义,\u3000属于CJK字符的CJK标点符号区块内,是空白字符之一。
它的名字是IdeographicSpace,有人译作表意字空格、象形字空格等。
顾名思义,就是全角的CJK空格。
它跟nbsp不一样,是可以被换行间断的。
常用于制造缩进,wiki还说用于抬头,但没见过。
去除\u3000str.replace(u'\u3000',u'')去除空格和\xa0、\u3000title.strip().replace(u'\u3000',u'').replace(u'\xa0',u'')
postedon
2019-09-0314:33
凌度
阅读(2311)
评论(0)
编辑
收藏
举报
刷新评论刷新页面返回顶部
延伸文章資訊
- 1java讀取文字檔案異常 - 程式人生
百度搜了一下這個uFEFF 原因如下在Windows下用文字編輯器建立的文字檔案,如果選擇以UTF-8等Unicode格式儲存,會在檔案頭(第一個字元)加入一個BOM ...
- 2Why UTF-8 BOM bytes efbbbf can be replaced by \ufeff?
The byte order mark (BOM) is a Unicode character, U+FEFF BYTE ORDER MARK (BOM), whose appearance ...
- 3ufeff的解决方法_51CTO博客
\ufeff的解决方法. 用"utf-8"编码方式读取带有BOM的文件时,它会把BOM当做是文件内容来处理, 也就会发生错误. 解决方法.
- 4位元組順序記號 - 维基百科
位元組順序記號(英語:byte-order mark,BOM)是位於碼點 U+FEFF 的統一碼字符的名称。當以UTF-16或UTF-32來將UCS/統一碼字符所組成的字串編碼時,這個字符被用來...
- 5IDE非法字符'\ufeff'报错| UTF8与UTF8-BOM,大端与小端等 ...
BOM. 出于好奇,我们查一下这个编码 \\ufeff 是个什么东东,查询得知,这是一个标识字节存储顺序的编码。 这个涉及到一个名词:BOM。