Posted By: vitas (vitas) on 'CZscripts'
Title:     Re: Perl regexp
Date:      Thu Nov 14 16:58:32 2002

> Mam takovyto problem:
> mam libovolny retezec, ktery obsahuje nejake znaky + uvozovky a apostrofy.
> Dejme tomu, ze bych chtel, aby mi regularni vyraz nasel retezce AHOJ
> v tomto retezci, ale jenom tehdy, pokud to AHOJ neni uvnitr dvojice ""
> nebo ''.
> Dejme tomu, ze retezec je:
> (Tady je AHOJ a "tady je nejaky text AHOJ a zase neco" a tady dalsi 'AHOJ')

nejprve idea jen pro uvozovky:
^("[^"]*"[^"]*)*AHOJ

pokus o preklad do cestiny: ( mezi dvema uvozovkama nekolik neuvozovek
a za nima zase nekolik neuvozovek ) toto nekolikrat a pak AHOJ

nekolik je 0,1,2...

pro kombinaci s apostrofama:

^(("[^"]*")?('[^']*])?[^'"]*)*AHOJ

osobne bych to delal jinak:

$txt =~ s/"[^"]*"//g;
$txt =~ s/'[^']*'//g;

$txt =~ s/AHOJ/zdravstvujte/g; #nebo neco jineho

vitas
  @;;
--
vi hint:
0GdG:wq -- dopise nacatou a neulozenou diplomku

Search the boards