[LUGOS] Obdelovanje dn v perlu-dodatek

matjaz.demsar at lj-mlek.si matjaz.demsar at lj-mlek.si
Thu Jul 6 09:06:21 CEST 2006


Prehitro sem poslal prejšnje sporočilo, se opravičujem

Tole je skripta:

#!/usr/bin/perl -w 
use DBI; 

$dbh = DBI->connect('DBI:mysql:lmprint;host=myhost', 'myuser', 'mypass', { 
RaiseError =>1 }); 

open(F1,"/tmp/test.csv"); 
        while($line = <F1>) { 
                if ($line =~ /^(\S+)\.\S+\,(\d+)\,(\d+)\,(\d+)\.\d+/) {
                $insert = "INSERT INTO report_current_month(printer, jobs, 
pages, cost) VALUES('$1','$2','$3','$4')"; 
                $sth = $dbh->prepare($insert); 
                $sth->execute; 
                } 
} 
close(F1); 

Težava je v obliki podatkov. Ti so zapisani v obliki

TALLY_T6180_VRS.Skladisca.Logistika.Trzenje.Ljubljana.LM,3,17,126

Za obdelavo potrebujem samo ime tiskalnika, torej TALLY_T6180_VRS, v bazo 
pa skripta vpiše "TALLY_T6180_VRS.Skladisca.Logistika.Trzenje.Ljubljana". 
To je logično, ker perl dela v "greedy" načinu in pobere čim več do zadnje 
pike. Telovadil sem tudi z ? vendar rezultat ni bil v okviru pričakovanega 
:(

Ima kdo mogoče kakšno idejo, kako bi odrezal string pri prvi piki?

Hvala in lep pozdrav,

Matjaž
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://liste2.lugos.si/pipermail/lugos-list/attachments/20060706/ca58499f/attachment.html


More information about the lugos-list mailing list