[SP-pm] Enc: Re: Ajuda no módulo EndnoteStyle
Nelson Ferraz
nferraz at gmail.com
Thu Oct 22 10:46:18 PDT 2009
Parece bem simples. Dada uma string como essa:
my $sample = <<'ENDNOTE';
%0 Journal Article
%1 1294302
%A Fabian M\&\#246;rchen
%T Unsupervised pattern mining from symbolic temporal data
%J SIGKDD Explor. Newsl.
%@ 1931-0145
%V 9
%N 1
%P 41-55
%D 2007
%R http://doi.acm.org/10.1145/1294301.1294302
%I ACM
ENDNOTE
Você pode obter uma lista de { chave => valor } da seguinte maneira:
my %data = parse($sample);
sub parse {
my $data = shift;
my %value;
while ( $data =~ /^(..) (.+)$/gm ) {
$value{$1} = $2;
}
return %value;
}
Você pode inclusive usar um hash para traduzir o código para o
significado desejado:
my %field = (
'%0' => 'type',
'%1' => 'id',
'%A' => 'author',
'%T' => 'title',
'%J' => 'journal',
# etc
);
Espero que isso ajude a começar.
More information about the SaoPaulo-pm
mailing list