Thread nach dem Fund Zeilennummern auch zurückgeben (22 answers)
Opened by Henri at 2015-05-09 15:57

Gast Henri
 2015-05-09 15:57
#180986 #180986
Hallo,
ich habe hier einen Code, damit kann ich wörter in einer Text-Datei durchsuchen,
aber ich möchte auch, dass er mir die zeile nummer zurückgibt.
dh. ZB hier eine Datei mit der folgede text.

aaaaaaaaaaaaaaaaaaaaawort1aaaaaaaa
bbbbbbbbbbbbbbwort2bbbbbbbbbbbbbbb
cccccccccccccccccccccwort3cccccccc
dddddddddddwort1dddddddddddddddddd
eeeeeeeeeeeeeeeeeeeewort4eeeeeeeee
wenn ich nach den Wörter wort1, wort2, wort3, wort4 durchsuche
gibt er mir das folgende Ergebnis:
wort1 Zeile: 1,4
wort2 Zeile: 2
wort3 Zeile: 3
wort4 Zeile: 5

Danke für ihre Mithilfe

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    #!/usr/bin/perl
    use strict;
    use warnings;
     
    use Tie::File;
     
    my @testitems = qw(Wort1, Wort2, wort3, wort4);  
    my $filename = 'result_2.csv'; 
    my %result; 
    #my $regexp = "(". join('|', map {uc($_)} @words) 
    tie my @array, 'Tie::File', $filename or die "$!\n"; 
    foreach my $item (@testitems) {
     $result{$item} = grep {/(^|[\s.;])$item([\s.;]|$)/i} @array; 
    }
    untie @array;
     
    print "items found: ";
    foreach my $item (@testitems) {
     print "$item " if ($result{$item});
    }
    print "\n";

Last edited: 2015-05-09 18:16:47 +0200 (CEST)

View full thread nach dem Fund Zeilennummern auch zurückgeben