Toon posts:

[Perl] tekst doorlopen en unieke woorden/punctuaties vinden

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

ik ben net met Perl begonnen, en nu wil ik een tekst doorlopen en aan de hand van een stel reguliere expressies bepaalde onderdelen daarin vinden. Het lukt me allemaal, op de punctuaties na, deze rekent hij allemaal als uniek terwijl ze dat uiteraard niet zijn.

Ik gebruik het volgende als code:
Om numerals eruit te pikken (numerals zijn in dit geval in de tekst gemarkeerd door woord/Num:
code:
1
2
3
4
5
6
    while ($line =~ m/\b([^\s\/]+)\/Num\b/g) {
        if ($numerals{$1} != 1) {
            $numerals{$1} = 1;
            @occurences1[length($1)]++;
        }
    }


Hiermee vind ik netjes de lengtes van elk uniek woord.

Nu doe ik hetzelfde met punctuaties, aangegeven met woord/Punc:
code:
1
2
3
4
5
6
    while ($line =~ m/([^\s\/]+)\/Punc\b/g) {
        if ($punctuations{"$1"} != 1) {
            $numerals{"$1"} = 1;
            @occurences2[length($1)]++;
        }
    }


Hier rekent 'ie echter elke punctuatie weer als een nieuwe unieke. Kan iemand mij vertellen wat ik hier over 't hoofd zie? Ik ben hier al een flinke tijd mee bezig op Google e.d., maar heb er geen oplossing voor kunnen vinden :/


edit:

Nevermind..
Dit moet mijn domste post ooit op dit forum zijn :( :( :( :(

[ Voor 9% gewijzigd door Verwijderd op 31-08-2004 23:24 ]