- 论坛徽章:
- 0
|
本帖最后由 风吹不倒 于 2011-03-18 09:38 编辑
原文件- 192.168.1.1 2011-03-17 11:00:00 3.5 a
- 192.168.1.2 2011-03-17 11:00:00 2.1 b
- 192.168.1.3 2011-03-17 11:00:00 - c
- 192.168.1.4 2011-03-17 11:00:00 1 d
复制代码 正则后内容- IP=192.168.1.1 Date=2011-03-17 Time=11:00:00 UseTime=3.5
- IP=192.168.1.2 Date=2011-03-17 Time=11:00:00 UseTime=2.1
- IP=192.168.1.3 Date=2011-03-17 Time=11:00:00 UseTime=0
- IP=192.168.1.4 Date=2011-03-17 Time=11:00:00 UseTime=1
复制代码 第一次:读入原文件内容,用正则将第四列-转换为0,再通过socket交给后端程序处理,报错,错误在求第四列均值的函数处,后端会把第四列的数值取出求均值。 可能是 - 替换后的 0 没有被识别为数值。。
第二次:将正则后的内容输出到一文本,从文本中读入内容,通过socket交给后端程序处理,无报错。
疑问:从上面的结果看 ,perl在读入文本内容时能分辨数值与字符串;
而用正则将-替换为0后,不能将其作为数值;
是不是这个原因呢?或者改如何修改呢? |
|