hallo,
ich will Buchstaben-trigrame aus dem Text erzeugen. Im Programm steckt etwas, das es nicht laufen lässt. Kann jemand ein Blick werfen und mir paar Tipps geben?
Danke.
Gruß,
Lina
#!/usr/bin/perl -w
use strict;
berechnet alle Trigramme (Buchstabenfolge der Länge 3) in einem ##Text und gibt diese mit Häufigkeit aus.
open (IN, "<te1.txt") or die "$!\n";
open (OUT,">te2.txt") or die "$!\n";
while (<IN>) {
my $line = $_; ## matches: Abc, abc, Äöü aber nicht: ABc, paß
while ( $line =~ /([A-ZÄÖÜa-zäöü])([a-zäöü][a-zäöü])(.*)/ ) {
my $first = $1;
$first =~ tr/A-ZÄÖÜ/a-zäöü/;
my $trigram = $first . $2;
my $trigram_array{$trigram}++ ;
$line = $2 . $3; ## ersten Buchstabe wegwerfen!
}
}
foreach $trigram (sort(keys(%trigram_array))) {
print $trigram_array{$trigram}, " ", $trigram, "\n";
}
close (OUT)or die "$!\n";
close (IN)or die "$!\n";