/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
Kompliceret sortering
Fra : Sune Lehmann


Dato : 19-09-02 18:12

Hej,

Jeg skal filtrere data ud et input, der kan have een af tre følgende former:

53) F. Close et al., TRANSPARENCIES FROM WORKSHOP ON NEUTRINO
PHYSICS CERN, GENEVA, OCTOBER 30 AND 31, 1978.
Print-80-0151 (CERN) (Oct 1978) 183p.

N/A: citation search is available only for journal papers or
e-prints


54) J.T. Lewis, J. Thomson, D. Williams, QUANTUM STOCHASTIC PROCESSES. 1.
Published in Phys.Rept.77:339,1981.

Cited 2 times. To get the listing use: FIN C PRPLC,C77,339


55) Alfred Frigerio, Mario Cassio Bellini, QUANTUM STOCHASTIC PROCESSES. 2.
Published in Phys.Rept.77:351,1981.

This work currently has no citations in the HEP database.

Fra disse skal jeg bruge et output a la

F. Close % navn
N/A %
citationsoplysninger ()
J.T. Lewis
2
J. Thomson
2
D. Williams
2
A. Frigerio,
0
M. C. Bellini
0

Jeg er lidt af en novice, hvad angår Perl, men jeg håber, at nogen kan
hjælpe mig.

Venligst

Sune Lehmann



 
 
Adam Sjøgren (19-09-2002)
Kommentar
Fra : Adam Sjøgren


Dato : 19-09-02 18:16

On Thu, 19 Sep 2002 19:12:13 +0200, Sune Lehmann wrote:

> Jeg skal filtrere data ud et input, der kan have een af tre følgende
> former:

[...]

> Fra disse skal jeg bruge et output a la

[...]

> Jeg er lidt af en novice, hvad angår Perl, men jeg håber, at nogen
> kan hjælpe mig.

Hvad har du prøvet indtil nu?


Mvh.

--
"I wear my unprofessionalism as a badge of honor. Adam Sjøgren
Professionalism has no place in art" asjo@koldfront.dk

Sune Lehmann (20-09-2002)
Kommentar
Fra : Sune Lehmann


Dato : 20-09-02 09:49

> Hvad har du prøvet indtil nu?
Indtil videre har jeg lavet 3 skripts, der hiver citationsoplysningerne ud.
Her er et eksempel:

open INPUT,"<data.dat";
open OUTPUT,">cit.dat";
while(<INPUT>)
{
next unless m/Cited/;
split;
print OUTPUT $_[1],"\n";
}
close OUTPUT;

Min tanke er, at sætte disse tre sammen i een fil, så jeg får citationerne
ud i samme rækkefølge som forfatterne.

Grunden til at jeg skrev min post var, at jeg i lang tid havde forsøgt at
sammensætte et regulært udtryk, der kunne fange forfatter-linien uden at
tage titlen med. Og det er måske dét jeg i virkeligheden gerne vil hjælpes
igang med.

Planen er så at kombinere Forfatter- og Citatfilen, "folde forfatterne ud"
(hvis der er mere end een) og til sidst sørge for at forkorte fornavne til
initialer.

Hvad angår at skabe et regulært udtryk, der kan hive forfatteroplysningerne
ud, har jeg prøvet at udnytte, at forfatterlisten altid er afsluttet med
enten "et al." eller artikel-navnet, der er i all caps. Det virker bare
ikke.

Venligst

Sune Lehmann



Adam Sjøgren (22-09-2002)
Kommentar
Fra : Adam Sjøgren


Dato : 22-09-02 21:14

On Fri, 20 Sep 2002 10:48:57 +0200, Sune Lehmann wrote:

> Hvad angår at skabe et regulært udtryk, der kan hive
> forfatteroplysningerne ud, har jeg prøvet at udnytte, at
> forfatterlisten altid er afsluttet med enten "et al." eller
> artikel-navnet, der er i all caps. Det virker bare ikke.

Hvordan ser det der ikke virker ud?


Mvh.

--
"Actually, now that my good side is no longer a Adam Sjøgren
physical being, I find him that much easier to ignore" asjo@koldfront.dk

Dennis Haney (23-09-2002)
Kommentar
Fra : Dennis Haney


Dato : 23-09-02 08:11

"Sune Lehmann" <lehmann@nbi.dk> writes:

> Hej,
>
> Jeg skal filtrere data ud et input, der kan have een af tre følgende former:
>
> 53) F. Close et al., TRANSPARENCIES FROM WORKSHOP ON NEUTRINO
> PHYSICS CERN, GENEVA, OCTOBER 30 AND 31, 1978.
> Print-80-0151 (CERN) (Oct 1978) 183p.
>
> N/A: citation search is available only for journal papers or
> e-prints
>
>
> 54) J.T. Lewis, J. Thomson, D. Williams, QUANTUM STOCHASTIC PROCESSES. 1.
> Published in Phys.Rept.77:339,1981.
>
> Cited 2 times. To get the listing use: FIN C PRPLC,C77,339
>
>
> 55) Alfred Frigerio, Mario Cassio Bellini, QUANTUM STOCHASTIC PROCESSES. 2.
> Published in Phys.Rept.77:351,1981.
>
> This work currently has no citations in the HEP database.
>
> Fra disse skal jeg bruge et output a la
>
> F. Close % navn
> N/A %
> citationsoplysninger ()
> J.T. Lewis
> 2
> J. Thomson
> 2
> D. Williams
> 2
> A. Frigerio,
> 0
> M. C. Bellini
> 0
>
> Jeg er lidt af en novice, hvad angår Perl, men jeg håber, at nogen kan
> hjælpe mig.

du har da også fundet et lidt tricke sted at starte...

men frit fra leveren:

open(F,"in")||die$!;
my @cites=split(/^\d+\)/,join"",<F>);
close F;
my %author;
foreach my $cite (@cites){
my @authors=split/,/,(split/\n/,$_,1);
pop @authors;#fjern titel
if (/Cited\s+(\d+)/) {
my $num=$1;
$author{$_}+=$num foreach @authors;
}
}

foreach my $author (sort {$author{$b} <=> $author{$a}} keys %author) {
print "$author\n$author{$author}\n";
}

--
Dennis
I have always thought explanations were overkill when correcting
mistakes. A simple "that's wrong" must suffice. I mean, people are
always aware why they are wrong. They just make mistakes to annoy you.

Sune Lehmann (20-10-2002)
Kommentar
Fra : Sune Lehmann


Dato : 20-10-02 21:27

Genialt,

Jeg har fået det til at virke og lært en masse om Perl. Tusind tak!

Sune Lehmann

"Dennis Haney" <davh@diku.dk> wrote in message
news:x6evg4xyycg.fsf@galar.diku.dk...
> "Sune Lehmann" <lehmann@nbi.dk> writes:
>
> > Hej,
> >
> > Jeg skal filtrere data ud et input, der kan have een af tre følgende
former:
> >
> > 53) F. Close et al., TRANSPARENCIES FROM WORKSHOP ON NEUTRINO
> > PHYSICS CERN, GENEVA, OCTOBER 30 AND 31, 1978.
> > Print-80-0151 (CERN) (Oct 1978) 183p.
> >
> > N/A: citation search is available only for journal papers or
> > e-prints
> >
> >
> > 54) J.T. Lewis, J. Thomson, D. Williams, QUANTUM STOCHASTIC PROCESSES.
1.
> > Published in Phys.Rept.77:339,1981.
> >
> > Cited 2 times. To get the listing use: FIN C PRPLC,C77,339
> >
> >
> > 55) Alfred Frigerio, Mario Cassio Bellini, QUANTUM STOCHASTIC PROCESSES.
2.
> > Published in Phys.Rept.77:351,1981.
> >
> > This work currently has no citations in the HEP database.
> >
> > Fra disse skal jeg bruge et output a la
> >
> > F. Close % navn
> > N/A %
> > citationsoplysninger ()
> > J.T. Lewis
> > 2
> > J. Thomson
> > 2
> > D. Williams
> > 2
> > A. Frigerio,
> > 0
> > M. C. Bellini
> > 0
> >
> > Jeg er lidt af en novice, hvad angår Perl, men jeg håber, at nogen kan
> > hjælpe mig.
>
> du har da også fundet et lidt tricke sted at starte...
>
> men frit fra leveren:
>
> open(F,"in")||die$!;
> my @cites=split(/^\d+\)/,join"",<F>);
> close F;
> my %author;
> foreach my $cite (@cites){
> my @authors=split/,/,(split/\n/,$_,1);
> pop @authors;#fjern titel
> if (/Cited\s+(\d+)/) {
> my $num=$1;
> $author{$_}+=$num foreach @authors;
> }
> }
>
> foreach my $author (sort {$author{$b} <=> $author{$a}} keys %author) {
> print "$author\n$author{$author}\n";
> }
>
> --
> Dennis
> I have always thought explanations were overkill when correcting
> mistakes. A simple "that's wrong" must suffice. I mean, people are
> always aware why they are wrong. They just make mistakes to annoy you.



Dennis Haney (21-10-2002)
Kommentar
Fra : Dennis Haney


Dato : 21-10-02 14:15

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

"Sune Lehmann" <lehmann@nbi.dk> writes:

> Genialt,
>
> Jeg har fået det til at virke og lært en masse om Perl. Tusind tak!

Det er jeg da glad for at høre.


- --
Dennis
I have always thought explanations were overkill when correcting
mistakes. A simple "that's wrong" must suffice. I mean, people are
always aware why they are wrong. They just make mistakes to annoy you.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8 <http://mailcrypt.sourceforge.net/>

iD8DBQE9s/3Fo6hqeoa8JFgRAh0xAJ9R9m7Y+zKnpLIGLIyb7Hn7PjGWRACg6BTy
SJSg4Rwg+aZKIwd0vcIh22g=
=3fHv
-----END PGP SIGNATURE-----

Søg
Reklame
Statistik
Spørgsmål : 177435
Tips : 31962
Nyheder : 719565
Indlæg : 6408016
Brugere : 218879

Månedens bedste
Årets bedste
Sidste års bedste