File: formatEC.pl

package info (click to toggle)
radiant 2.7%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 1,048 kB
  • sloc: perl: 5,393; sh: 323; makefile: 35
file content (59 lines) | stat: -rwxr-xr-x 739 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/usr/bin/env perl

use strict;

my ($fileClass, $fileEnzyme) = @ARGV;

open CLASS, $fileClass or die $fileClass;

while ( <CLASS> )
{
	chomp;
	
	if ( /^(\d+)\.\s*(\d+|-)\.\s*(\d+|-)\.\s*(\d+|-)\s+(.+)\.$/ )
	{
		my @classes = ($1, $2, $3, $4);
		my $desc = $5;
		
		while ( $classes[-1] eq '-' )
		{
			pop @classes;
		}
		
		print join '.', @classes;
		print "\t$desc\n";
	}
}

close CLASS;

my $id;
my $desc;

open ENZYME, $fileEnzyme or die $fileEnzyme;

while ( <ENZYME> )
{
	chomp;
	
	if ( /^ID\s+(\d+\.\d+\.\d+\.\d+)$/ )
	{
		$id = $1;
	}
	elsif ( /^DE\s+(.+)\.$/ )
	{
		$desc = $1;
	}
	elsif ( /^\/\/$/ )
	{
		if ( defined $id && defined $desc )
		{
			print "$id\t$desc\n";
		}
		
		undef $id;
		undef $desc;
	}
}

close ENZYME;