[linux] reg exp a cislo

selectp na ba.profinet.sk selectp na ba.profinet.sk
Čtvrtek Září 28 15:16:54 CEST 2000


On 28 Sep 2000, at 10:24, Bohdan Spes wrote:

> Zdravim. 
> 
> 	Vcera som po dlhej dobe robil s perlom a narazil som na velky :) problem.
> Parsoval som riadok ktory vyzeral takto:
> 					3245865;komentar haha
> a potreboval som ziskat to cislo. Moj prvy hlupy napad bol takyto:
> if ($line =~ /\s(\d+)[\s\;]/) { print $1;}
> lenze to mi vzdy vratilo len prvu cifru 3. Potom mi napadlo taketo nieco:
> if ($line =~ /\s(\d\d*\d)[\s\;]/) {print $1;} a slava, vystup bol spravny, teda
> 3245865. Lenze ma to jeden hacik, to cislo musi byt minimalne dvojciferne pri
> takomto porovnani a to mi vadi. Ak poznate INTELIGENTNEJSI sposob, ako ziskat
> to cislo cez reg. vyrazy, budem vam vdacny. Ide to asi aj cez split a mozno
> este aj inym sposobom (tiez ma zaujimaju), ale najviac ma zaujimaju reg.
> vyrazy.
Ahoj ... Neviem ci je inteligentnejsi ale skusil by som funkciu split
teda 
@polozky=split(/;/,$line); #rozdeli $ine podla danej regexp. ... teda 
aspon dufam..
print $polozky[0]; #da ako vysledok to cislo




Další informace o konferenci linux