在预先定义的标记处分割文本行

我很抱歉,如果这样做已经完成了,但我现在正在search两天,我希望这将是一个简单的解决scheme,没有成功

我有一个有100行数据的文件。

每行有380个字符。

我有一个指导,告诉我:

从字符1开始,对于3个字符是信息x

从字符4开始,对于8个字符是信息y

从字符12开始,16个字符是信息z

等等

什么是有效的信息堵塞到一个块43列。 有些信息是名字,date,有2位小数的数字,有8位小数的数字等等。

例如

MJBN1XXXXXX00018YNN1C11010C SMITH JOHNNE 99999N 20140306E 201403112014030667011M107V 10000000000000 0000000000018000000C 000000755000000 0000001359000 Y0000000002500 0000000000000 0000000000000 0000000000000 0000000000000 0000000000000 0000000000000 0000001361500 NOVX21 INC CL B 0201403060001810 

我正在尝试使用一些主stream的东西,例如Excel或notepad ++将100行中的每一行都拆分为列,即使是在每个中断处插入“,”以便我可以在Excel中打开它。

我知道我可以通过Excel的“文本到列”function通过拖动列分隔符到需要的地方,但我在寻找一个可重复的过程,有大约10个不同宽度的文件每天进来,他们可以是一次10k +行,但如果我可以build立一个macros或脚本的10个文件types中的每一个,我可以按需运行,当我打开一个新的文件,这将是我的最终目标。

学习一些脚本的时候了,我的朋友。

您可以使用Excel的“文本到列”,并指定一个分隔符,如果有一个一致的(例如制表符或空格),但是如果某人有中间名或出现其他皱折,则可能会发生。

如果存在一个复杂但分隔符相同的分隔符,则可以使用正则expression式来查找/replace所有分隔符,然后直接导入到Excel中。 我不知道,如果记事本++提供这个,但你可以得到一个Sublime文本的评估副本,我强烈build议反正。

如果您对这些文件的制作方式有发言权,那么以CSV等标准格式请求这些文件会给您更多的parsing选项。

如果这两者都不可行的话,那么学习一点Python或Ruby可能是时候了。 一次编写一个简单的10行脚本就可以在毫秒内将这些文件转换成Excel。

我知道这不是一个简单的答案,但学习编程语言将改变你的生活。