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