每次在Windows下运行Perl,或者通过Perl处理Windows系统生成的文件时,行尾总会有隐藏的换行符删不掉,chomp毛用都没有。处理后的文件在文本阅读器如TXT、EditPlus等中是看不到换行符的,然而当将文本内容拷贝到Excel表格中时,明明应该在一行的内容却变成了两行,这便是隐藏的换行符在捣鬼。疑惑、愤怒、迷茫的情绪交织在一起,伴随着一声声的“哪儿错了”却不知所措,其实只要通过下面一句代码干掉那些隐藏的换行符就万事大吉了。
1 | $_=~s/[\n\r]+$//; |
上述命令表示通过查找替换的方式去除当前行末尾的所有换行符。