Hallo,
Ich habe folgendes Problem:
für meinen Programm habe ich einen Module besorgt Lingua::Stem, dieser arbeitet allerdings mit Arrays. Wie kann man diesen an einen Hash anwenden?
z.B.
%input = (‚class of drugs‘ => ‚medicine‘,
‚brain functions‘ => ‚medicine‘,
‚types of dementia‘ => medicine’,
‚cause of dementia‘ => ‚medicine‘);
das möchte ich als output bekommen:
%output:
class of drug => medicine
brain function => medicine
type of dementia => medicine
cause of dementia => medicine
Perl Code für @Array
#!/usr/local/bin/perl -w
use lib „/home/knoppix/MA/perl-lib/Lingua-Stem-0.83/lib“;
use Lingua::Stem;
use strict;
my(@stems, $stem, @forms);
while(){
chomp;
push @forms,$_;
}
@stems = stem(@forms);
foreach $stem (@stems) {
print „$stem\n“;
}
exit(0);
this is a stem() we define ourselves
it takes an array and returns an array - inefficient but easy to use
sub stem {
my(@forms) = @_;
my(@stems, $refToArrayOfStems);
there is another stem() sitting in Lingua::Stem
$refToArrayOfStems = Lingua::Stem::stem(@forms); # we do not know references yet
@stems = @{$refToArrayOfStems}; # so I’ll explain this scary line
only when you ask me
return(@stems);
}
Gruss,
Perl Anfänger : Krokodil Gena