$/ geht nicht mit Regex



  • Hallo,
    Gibt es eine Moeglichkeit ein Textfile in Perl in eine Liste einzulesen, aber in Textbloecken separiert mit einer Regex?

    Statt zeilenweise einzulesen und "\n" als Trennzeichen zwischen den Listenelementen zu benutzen, haette ich gerne das "Trennzeichen" ($/) umdefiniert in eine Regex. Also zB / *Cell \d\d - /. Alles was hinter " Cell 01" kommt und bis zum naechsten "Cell 02" (oder EOF) geht, sollte dann ein Element der Liste sein.

    Ich habe es jetzt so versucht, aber das klappte nicht, weil $/ keine Regex sein kann:

    local $/ = / *Cell \d\d - /;
    
    my $file = './raw.txt';
    open(INFO, "<$file") or die $!; 
    my @lines = <INFO>;
    close(INFO);
    
    ## block idx 2
    print $lines[2] . "\n";
    

    Ich denke, es sollte rel. einfach sein das ohne Schleifen zu loesen, bin aber ein Perl Newbie und koennte das nur mit zusaetzlichen Schliefen loesen. 😞

    Kann mir jemand helfen?



  • Hab den fehler raus, thx to all!


Anmelden zum Antworten