关于UTF-8问题

kingwmj78 2010-10-22 10:56:43
我在ubuntu 下用perl做文本对比,两个文件都是utf-8格式的,但是对比出来结果不对,有匹配的行,就是不认。
但是如果转到win下,用相同的程序和文本文件,utf-8的,也不认。但是把文本文件转成ASCII的字符集,结果就对了。
按道理,两个文本都是utf-8的,而且我的文本中都是英文和数字,没有怪字符,应该是可以进行对比的,有没有人遇到这样的问题呢?
如果perl在处理文本时,因文本的字符集选用不同而结果不同的话,会有很大的问题的。像这样的问题该如处理?
最方便,安全的办法是什么?
再问个问题:
有没有什么函数会提供警示功能(当两个文本,字符集不同时,或是无法处理的字符集)。
...全文
122 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
iambic 2010-11-11
  • 打赏
  • 举报
回复
先diff下。
silverlove 2010-11-11
  • 打赏
  • 举报
回复
看一下两个文件的十六进制代码,是否是BOM的问题:ef bb bf。
jamseyang 2010-11-05
  • 打赏
  • 举报
回复
marking...
caizhanfei 2010-10-22
  • 打赏
  • 举报
回复
在文本的第一行写上所用的编码?
kingwmj78 2010-10-22
  • 打赏
  • 举报
回复
我用的是单词锚位\b \b,应该可以排除不可见字符。
也用过\s \s 都不行。
赵4老师 2010-10-22
  • 打赏
  • 举报
回复
里面有看不见的字符?
比如空格、tab字符、回车字符、全角空格……

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧