Thread Textnormalisierung...Hilfe! (18 answers)
Opened by Gast at 2008-06-26 17:45

Linuxer
 2008-06-26 19:25
#111567 #111567
User since
2006-01-27
3891 Artikel
HausmeisterIn

user image
perlre - Look-Around Assertions

Und der Modifier /e ist hier hilfreich.

Du kannst den Regex nach Wörtern suchen lassen, die auf einen Punkt folgen und dann den Treffer an eine Subroutine geben, die die Kontrolle gegen den Index macht und entweder das originale Wort zurückliefert oder eben die kleingeschriebene Variante.
Dazu brauchst Du den Modifier /e


Schema (ungetestet):
Code (perl): (dl )
1
2
3
4
5
6
7
8
$text =~ s/ (?<=\.\x20) (\w+) /foo($1)/xeg;

sub foo {
  my $word = shift;
  my $lc_word = lc $word;
  return $word if not exists $hash{ $lc_word };
  return $lc_word;
}
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Textnormalisierung...Hilfe!