Problem se nenazranym kvantifikatorem v Perlu

Karel Zak zakkr na zf.jcu.cz
Pondělí Únor 5 12:11:25 CET 2001


On Mon, 5 Feb 2001, Borek Lupoměský wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On Mon, 5 Feb 2001, Karel Zak wrote:
> 
> KZ> $ printf "#include <string.h>\nmain(int argc, char **argv){char *x=strrchr(
> KZ>   argv[1], '.'); puts(x ? ++x : \"\"); exit(0);}" > x.c; gcc -o x x.c
> KZ> 
> KZ> $ perl -e "system (\"./x aa.bb.cc\")"
> KZ> </JOKE-WITHOUT-FLAME>
> KZ> 
> KZ> ... je-li $a =~ /\.(.+?)$/; a tim i tisice radek kodu ktery tuto radku
> KZ> analyzuje standardni metoda nalezeni tecky tak doporucuji zakazat Perl...
> 
>    Vas komentar je velmi hloupy.

 Tak sorry... vzdyt to bylo mysleno temer nevazne.

>    Psal jsem si utilitu na konverzi jmen nejakych souboru, ktera se
> provadela podle jejich obsahu (HTML), ktery se proto musel
> urcitym zpusobem parsovat. V perlu jsem to zvladnul za par minut (kdyz
> pominu reseni toho problemu s nenazranosti).
>    V Cecku bych to psal (i vy) urcite pul dne. Coz je pro jednoucelovou
> vec, kterou po pouziti smazu, zbytecne.
>    Problem, na ktery jsem narazil jsem samozrejme pred tim, nez jsem ho
> sem postnul, vydestiloval do minimalni formy, aby byl co nejvice zjevny.

 Ja jen poukazoval na to, ze (IMHO) je to dost drsne pokud si predstavim
co vsechno se musi provest v C (uvnitr Perlu), aby se nasla tecka, kdyz
pritom lze pouzit strrchr() s pravdepodobne stejnym efektem. Neslo o to
nutit vam neco jineho nez Perl, ja si take nepisu jednorazove veci v C.

 Proste ja bych ocekaval neco jako strrchr() na miste toho $a =~ ....;

 Pokud se Vas to dotklo tak se omlouvam, ja chtel byt jizlivy jen vuci
Perlu :-) 

			Karel
 



Další informace o konferenci Linux