问题 - 多行、分号分隔的文件在第 79 列或第 80 列被拆分(由于某些奇怪的原因并不总是相同)。
在我看来,正则表达式是合适的解决方案,所以现在我有两个问题。
线路是:
1sdf.............................mno[cr][lf]
pqr........xyz......................[cr][lf]
.....|.....|.....|.....|.....|.....|[cr][lf]
2sdf.............................mno[cr][lf]
pqr........xyz......................[cr][lf]
.....|.....|.....|.....|.....|.....|[cr][lf]
3sdf.............................mno[cr][lf]
pqr........xyz......................[cr][lf]
.....|.....|.....|.....|.....|.....|[cr][lf]
4sdf.............................mno[cr][lf]
pqr........xyz......................[cr][lf]
.....|.....|.....|.....|.....|.....|[cr][lf]
... 10000 rows ...
管道是非空格空白字符(可能是制表符)
我需要:
1sdf.............................mnopqr........xyz......................[cr][lf]
2sdf.............................mnopqr........xyz......................[cr][lf]
3sdf.............................mnopqr........xyz......................[cr][lf]
4sdf.............................mnopqr........xyz......................[cr][lf]
我设法完成了工作
第 1 遍:
替换^\s*\r\n
为\rxxx\n
// 将空行替换为 \rxxx\n 离开
1sdf.............................mno[cr][lf]
pqr........xyz......................[cr][lf]
[cr]xxx[lf]
2sdf.............................mno[cr][lf]
pqr........xyz......................[cr][lf]
第 2 遍:替换\r\n
为 [empty] //离开:
1sdf.............................mnopqr........xyz......................[cr]
xxx[lf]
2sdf.............................mnopqr........xyz......................
通过 3:替换\rxxx\n
为\r\n
//离开:
1sdf.............................mnopqr........xyz......................[cr][lf]
2sdf.............................mnopqr........xyz......................
其余的清理工作是微不足道的。
有什么方法可以一步完成吗?输出来自一个常见的金融应用程序,我宁愿自己修复文件,也不愿尝试让多个客户调整他们的输出。