Thread Text-Datei nach einer Variable durchsuchen
(8 answers)
Opened by KamelKraut at 2014-03-15 10:21
darf ich dir als erstes http://perl-tutorial.org/ (z.B. "Modern Perl - The Book") ans Herz legen?
Da lernst du von Grund auf sauberes, modernes Perl. Jetzt eine Frage: $test =~ $alle_namen Was macht der Code? Er testet, ob der String in $test auf die Regex matcht, die in $alle_namen steht. Der Punkt ist nur, in $alle_namen steht keine Regex, oder besser gesagt, nicht die, die du möchtest. Erstmal steht in $alle_namen nur eine Zeile, da du mit $alle_namen = (<MYFILE>); eben nur eine Zeile ausliest. Zweitens steht am Ende der Zeile auch noch ein Newline, weshalb es gar nicht matchen wird, da im String $test eben kein Newline hinter dem Namen steht. Was du möchtest, ist: Matcht der String $test auf irgendeinen der Namen, die in der Datei stehen. Das kannst du auf zwei Wegen lösen: Entweder du gehst zeilenweise durch die Datei und versuchst du matchen, oder du bastelst eine Regex aus allen Namen. Das ist aber nicht damit getan, indem du einfach alle Namen hintereinander schreibst. Eine Regex würde so aussehen: m/(name1|name2|name3)/ Ich schlage also vor, dass du erstmal ein bisschen Tutorial liest. Handelt es sich um eine Hausaufgabe? Last edited: 2014-03-15 11:12:15 +0100 (CET) Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |