<br><font size=2 face="sans-serif"><br>
</font>
<br>
<br>
<br>
<br>
<br>
<br><font size=2><tt>matjaz.demsar@lj-mlek.si wrote:<br>
&gt;<br>
&gt; Prehitro sem poslal prejšnje sporočilo, se opravičujem<br>
&gt;<br>
&gt; Tole je skripta:<br>
&gt;<br>
&gt; #!/usr/bin/perl -w<br>
&gt; use DBI;<br>
&gt;<br>
&gt; $dbh = DBI-&gt;connect('DBI:mysql:lmprint;host=myhost', 'myuser',
<br>
&gt; 'mypass', { RaiseError =&gt;1 });<br>
&gt;<br>
&gt; open(F1,&quot;/tmp/test.csv&quot;);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp;while($line = &lt;F1&gt;) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ($line =~
/^(\S+)\.\S+\,(\d+)\,(\d+)\,(\d+)\.\d+/) {<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$insert = &quot;INSERT
INTO report_current_month(printer, <br>
&gt; jobs, pages, cost) VALUES('$1','$2','$3','$4')&quot;;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$sth = $dbh-&gt;prepare($insert);<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$sth-&gt;execute;<br>
&gt; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br>
&gt; }<br>
&gt; close(F1);<br>
&gt;<br>
&gt; Težava je v obliki podatkov. Ti so zapisani v obliki<br>
&gt;<br>
&gt; TALLY_T6180_VRS.Skladisca.Logistika.Trzenje.Ljubljana.LM,3,17,126<br>
&gt;<br>
&gt; Za obdelavo potrebujem samo ime tiskalnika, torej TALLY_T6180_VRS,
v <br>
&gt; bazo pa skripta vpiše <br>
&gt; &quot;TALLY_T6180_VRS.Skladisca.Logistika.Trzenje.Ljubljana&quot;.
To je <br>
&gt; logično, ker perl dela v &quot;greedy&quot; načinu in pobere čim
več do zadnje <br>
&gt; pike. Telovadil sem tudi z ? vendar rezultat ni bil v okviru <br>
&gt; pričakovanega :(<br>
&gt;<br>
&gt; Ima kdo mogoče kakšno idejo, kako bi odrezal string pri prvi piki?<br>
&gt;<br>
&gt; Hvala in lep pozdrav,<br>
&gt;<br>
&gt; Matjaž<br>
&gt; ------------------------------------------------------------------------<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; lugos-list mailing list<br>
&gt; lugos-list@lugos.si<br>
&gt; http://liste2.lugos.si/cgi-bin/mailman/listinfo/lugos-list<br>
&gt; &nbsp; <br>
Moj predlog: prebereš vrstico in jo s split razbiješ glede na separator<br>
<br>
while(&lt;&gt;){<br>
($atributA,$atributB,$atributC)=split/\./;<br>
...<br>
}<br>
v tvojem primeru imaš zdaj ime tiskalnika v spremenljivki $atributA<br>
<br>
LP, Andrej<br>
<br>
_______________________________________________<br>
lugos-list mailing list<br>
lugos-list@lugos.si<br>
http://liste2.lugos.si/cgi-bin/mailman/listinfo/lugos-list<br>
</tt></font>
<br>
<br>
<br><font size=2><tt>Deluje, najlepša hvala za pomoč.</tt></font>
<br>
<br><font size=2><tt>#!/usr/bin/perl -w</tt></font>
<br><font size=2><tt>use DBI;</tt></font>
<br>
<br><font size=2><tt>$dbh = DBI-&gt;connect('DBI:mysql:lmprint;host=kikimora.local.lj-mlek.si',
'lmprint', 'lmprint', { RaiseError =&gt;1 });</tt></font>
<br>
<br><font size=2><tt>open(F1,&quot;/tmp/test.csv&quot;);</tt></font>
<br><font size=2><tt>open(F2,&quot;&gt;/root/mojedelo/output&quot;);</tt></font>
<br><font size=2><tt>&nbsp; &nbsp; &nbsp; &nbsp; while($line = &lt;F1&gt;)
{</tt></font>
<br><font size=2><tt>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
if ($line =~ /^(\S+)\.\S+\,(\d+)\,(\d+)\,(\d+)\.\d+/) {</tt></font>
<br><font size=2><tt>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;<b> @printer = split(/\./, $1);</b></tt></font>
<br><font size=2><tt>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
$insert = &quot;INSERT INTO report_current_month(printer, jobs, pages,
cost) VALUES('$printer[0]','$2','$3','$4')&quot;;</tt></font>
<br><font size=2><tt>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
$sth = $dbh-&gt;prepare($insert);</tt></font>
<br><font size=2><tt>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
$sth-&gt;execute;</tt></font>
<br><font size=2><tt>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
}</tt></font>
<br><font size=2><tt>}</tt></font>
<br><font size=2><tt>close(F2);</tt></font>
<br><font size=2><tt>close(F1);</tt></font>
<br>
<br><font size=2><tt>LP</tt></font>
<br><font size=2><tt>Matjaž</tt></font>
<br>