Thread Anrede umsetzen
(7 answers)
Opened by cowan at 2015-04-13 20:17
Keine Ahnung, was bei Dir nicht klappt. Brauchbare Infos lieferst Du leider nicht und auf gelieferte Infos gehst Du auch nicht ein. Bei mir funktioniert mein Vorschlag.
Was willst Du an der nicht funktionierenden Zeile anpassen? $1 ist nur lesbar. Sie funktioniert so nicht! Und was der Regex unabhängig davon machen soll, wird mir auch nicht klar. Worauf soll /^\s(.)/ bitte zutreffen? Auf "Frau"? Auf "Herr"? Auf "nix"? Beispiel: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #! /usr/bin/perl use strict; use warnings; while ( my $dataset = <DATA> ) { chomp $dataset; my ( $anrede, $titel, $vorname, $nachname ) = split m/;/, $dataset; # $anrede kann sein: Herr, Frau oder leer (bzw. alles andere wird wie leer gewertet) $anrede = $anrede eq 'Frau' ? "Sehr geehrte Frau" : $anrede eq 'Herr' ? "Sehr geehrter Herr" : 'Sehr geehrte Damen und Herren'; my $name = defined($titel) ? "$titel $nachname" : $nachname; print "$anrede $name\n"; } __DATA__ Herr;;Fritz;Mueller Frau;Dr.;Liese;Meier ;;; 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! |