juzi1114
求教:如何将序号相同的两行合并为一行
如是这样的
11 Alpha-
11 24/25 protein)
12 Amiloride-sensitive amine oxidase
12 (EC 1.4.3.6)
12 (Histaminase)
想要用perl来写 将前面序号相同的合并变成如下形式:
11 Alpha-24/25 protein)
12 Amiloride-sensitive amine oxidase (EC 1.4.3.6) (Histaminase)
用去掉换行也不行
谢谢啦 想了好久都不会!!
我很努力在学习perl了滴...
ps: 这样的数据有很多个,如下
1 ab
1 cd
2 ...
2 ....
3 .....
.....
1500 ....
准备把这些存成一个数组,但是后面的就不知道怎么写了, 谢谢各位了!!!
[[i] 本帖最后由 juzi1114 于 2008-6-19 14:18 编辑 [/i]]
cobrawgl
#!user/bin/perl
use strict;
use warnings;
my %data;
while (<DATA>) {
chomp;
my @t = /(/d+)/s+(.*)/;
$data{$t[0]} .= $t[1];
}
print $_, "/t", $data{$_}, "/n" for keys %data;
__DATA__
11 Alpha-
11 24/25 protein)
12 Amiloride-sensitive amine oxidase
12 (EC 1.4.3.6)
12 (Histaminase
[[i] 本帖最后由 cobrawgl 于 2008-6-19 14:53 编辑 [/i]]