2015-04-27 68 views
2

我试图用Perl解析文本文件时遇到了这个问题。原始文件看起来像这样在vim: enter image description here这是什么字段分隔符(^ M)?

当我试图打印的第2列(87此处),不知何故,^ M在vim出现了: enter image description here

我只是好奇什么这个“^ M”是?有人知道吗?谢谢!

+0

[Perl m操作符问题]的可能重复(http://stackoverflow.com/questions/5490321/perl-m-operator-question) –

回答

2

^M是ASCII字符13,被称为回车符。 MS-DOS使用回车符后面跟换行符(ASCII 10)来标记一行的结尾。 Unix系统仅使用换行符。通常当使用编辑器时,你会“看到”一个回车,该编辑器认为你的文件使用的是Unix样式的行尾,但实际上有MS-DOS样式的行尾。

+1

谢谢!这是有道理的,因为我从一个朋友使用Windows操作系统得到这个文件...该死的,我很困惑.. – olala

+1

如果你喜欢的答案随意标记为接受。在处理行结束问题时,在stackoverflow上有几个有用的答案。还要查看系统上的dos2unix和unix2dos实用程序。 – patrickmdnet

+0

我可以在3分钟内接受它... – olala