Problem se nenazranym kvantifikatorem v Perlu

Honza Pazdziora adelton na fi.muni.cz
Pondělí Únor 5 12:02:01 CET 2001


On 5 Feb 2001 10:14:38 GMT, Cejka Rudolf <cejkar na dcse.fee.vutbr.cz> wrote:
> >    V perlu potrebuji najit v retezci vse za posledni teckou. Teoreticky
> > jednoducha vec -- ale nefunguje, operator '*?' se chova nenazrane, tj.
> > stejne jako '*':
> 
> Perl ma i moznost, ja se chovat "nazrane".

Ovsem v tomto konkretnim pripade je to jedno -- zravost rika, kdy se
ma skoncit, nikoli kde se ma zacit. Projevilo by se to u /\.(.+?)/,
ovsem pokud je ten regexp ukotven na konci $, musi holt jit az na
konec.

> > ~$ perl
> > $a = "aa.bb.cc";
> > $a =~ /\.(.+?)$/;
> > print $1, "\n";
> > bb.cc
> 
> A nestaci standardni regularni vyraz /\.([^.]*)$/ ?

Tak.

-- 
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
   .project: Perl, DBI, Oracle, MySQL, auth. WWW servers, DBD::XBase.
Petition for a Software Patent Free Europe http://petition.eurolinux.org
------------------------------------------------------------------------


Další informace o konferenci Linux