[linux] OT:perl

Ondrej Jombik nepto na pobox.sk
Středa Červenec 16 23:39:41 CEST 2003


On Wed, 16 Jul 2003, Stefan Valastan wrote:

> Mam takyto problem v perle a nejako ho neviem vyriesit
> Mam pole
> @core  ktore je naplnene jednotlivymi prvkami z vyhladavania find
> Hodnota prvku v poli je:
> /home/user/stevo.user.bat
> /home/user/robo.user.bat
> atd.
> no a ja potrebuje tie prvky v tom poli osekat tak aby som ich dostal
> z toho pola v tvare:
> stevo.user
> robo.user

Zrejme existuje nato nejaky sofistikovany "ARRAY WALK", ktory to spravi
strasne efektivne. Ak to niekto vie, sem s nim.

No a tuto pomale proven riesenie:

    for ($i = 0; $i < scalar(@core); $i++) {
        $core[$i] = substr($core[$i], 0, -4);
        @array    = split('/', $core[$i]);
        $core[$i] = $array[length($array) - 1];
    }

Predpokladam vsak, ze si chcel asi regexp:

    for ($i = 0; $i < scalar(@core); $i++) {
        $core[$i] =~ s{^.*/([^/]*).bat$}{$1}g;
    }

Dufam, ze to pomohlo.

--
  _/|   Ondrej Jombik - nepto na php.net - http://www.nepto.sk - OJ812-RIPE
 <_  \  Platon SDG - open source software development - http://platon.sk
   `\|  Nech operacia X na mnozine G tvori grupu, potom plati...  rundu!
    '`



Další informace o konferenci linux