【发布时间】:2015-01-28 02:37:48
【问题描述】:
我有一个大文件(比如说文件 A),我想在 perl 中从中提取某些数据行。
一个示例条目如下所示。它始终是 10 个数据点,条目长度为 5-6 个字母数字字符,末尾带有 :。一行可以有多个条目,但\W+ 覆盖了两者之间的空间。
....
....
LookupReferences: {
12V0E:
24983:
384KJ:
48743X:
52V0E:
64983:
784KJ:
88743X:
94983:
1084KJ:
}
我希望它看起来像下面的条目,我可以在其他地方加载。
References,12V0E,24983,384KJ,48743X,52V0E,64983,784KJ,88743X,94983,1084KJ
我正在某处阅读有关将整个页面强制转换为数组的内容,但这里的任何帮助都非常感谢,因为我一直在搞乱它并且在 10 年内没有真正使用过任何 perl,因此可以再次归类为绝对初学者。
【问题讨论】:
-
您的“大文件”到底有多大?右大括号是否总是单独出现在一行上?除了
LookupReferences块之外,文件中还有其他内容吗? -
大概12-15,000行,不像一百万+那么大,但足够大了。可能存在特殊字符,有时右大括号在同一行。另外..最后对数据的要求是关键,因为我想将整行打印到另一个变量的末尾,对于每个条目,理想情况下我只需将每个分组添加到当前的末尾多变的。举个例子。 $data = "测试结果 ABC" 将变为。 $data = "测试结果 ABC,References,12V0E,24983,384KJ,48743X,52V0E,64983,784KJ,88743X,94983,1084KJ";