Claro, el problema es que mi fichero no es csv. ;)
Me gusta lo de los pasos, jajajjaa.
paso 1:
while (<>) {
@campos = split( /:/, $_ );
if ( $campos[0] =~ /^<RECORD/ ) {
}
elsif ( $campos[0] =~ /^(\w)+\s(\w)+/ ) {
$hash{ $campos[0] }++;
$orden{ $campos[0] } ||= $.;
}
elsif ( $campos[0] =~ /^(\w)+/ ) {
$hash{ $campos[0] }++;
$orden{ $campos[0] } ||= $.;
}
else {
}
}
foreach ( sort { $orden{$a} <=> $orden{$b} } keys %orden ) {
print "$_ = $hash{$_}\n";
}
Me dice el nombre del campo y su posición, con lo cual ahora solo puedo
tirar por la vía larga y hacer el paso 2 así:
if ( $_ =~ /^<RECORD/ ) {
my $registro = $_;
$registro =~ s/^<RECORD ([0-9]+)>/$1/;
chop($registro);
print "$registro\t";
}
elsif ( $_ =~ /^Accession number/ ) {
my $acn = $_;
$acn =~ s/^Accession number://;
chop($acn);
print "$acn\t";
}
Luego solo es meterlo en una sola tabla en la BD, porque no se me ocurre aun
nada con los números de los autores. Pero sigo pensando que no es lo más
optimo, por eso me estaba leyendo lo de las librerías que antes mencione.
_______________________________________________
Madrid-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/madrid-pm