由于之前爬某房地产网站的房价数据,开始没有定义好存储的位子,所以临时存储在了txt文件中。最近定义清楚数据需要存储在mongoDB中,所以我需要从原来数据中解析出来存储在mongoDB中,转存的时候在由于格式的原因导致一部分数据出现问题。因为存储的数据需要每条数据以数字开头,所以我将数据导入了Linux服务器,通过正则匹配发现有一部分数据不是以数字开头,最后发现由于Linux和win的换行不同导致的。导入Linux通过vim编辑文件,发现有问题的数据均包含^M,产生实际上是因为dos和linux 采用了不同的换行导致的,linux是用的\n而dos是用的\n\r
遇到这样问题如何处理一下,其实很简单Linux上提供了许多工具
方法1:
1.在vim编辑器中,进入vim的编辑模式输入:号;
2.输入"%s/\r//g",然后按 " Enter "键进行提供;
切记这里不是替换的^M,我看好多人提供的解决办法用提供^M;
方法2:
1.安装一下dos2unix工具
yum install dos2unix -y
2.用dos2unix 进行转换
dos2unix filename