【发布时间】:2012-01-30 23:45:08
【问题描述】:
例如给定如下输入文件:
sid|storeNo|latitude|longitude
2|1|-28.03õ720000
9|2
10
jgn
352|1|-28.03¿720000
9|2|fd¿kjhn422-405
000¥0543210|gf¿djk39
gfd|f¥d||fd
输出(下面的字符可以按任意顺序出现):
¿õ¥
有没有人有一个函数(awk、bash、perl.etc)可以扫描每一行,然后输出(八进制、十六进制或 ascii - 都可以)一个不同的控制字符列表(为简单起见,控制字符是那些高于 ascii char 126) 的吗?
使用 perl v5.8.8。
【问题讨论】:
-
为什么不首先使用适当的字符集进行解码?
-
@Ignacio - 理想情况下,是的。但从外部来源接收数据,因此能够运行此检查将很有用。
-
Nit:只有一个“126 以上的 ascii char”,因为 ASCII 只有 128 个字符(编号 0-127)。当您说“ascii char”时,您的意思是“字节”。
标签: linux perl bash shell unix