livecheck.regex

James Kyle jameskyle at macports.org
Sat Jun 20 10:51:28 PDT 2009


Morning,

It looks like the livecheck.regex rules are not the same as the tcl  
regex rules. I could be sorely mistaken since I have very limited  
exposure to tcl.

However, this is what I'm seeing:

in the tclsh, the following pattern matches correctly:

% set text "newmat10.tar.gz or newmat10.zip - newmat10D source files"
newmat10.tar.gz or newmat10.zip - newmat10D source files
% set worldlist [regexp -inline -all -- {newmat(10)\.tar\.gz or  
newmat10\.zip - newmat10D source files} $text]
{newmat10.tar.gz or newmat10.zip - newmat10D source files} 10
% exit


The $text is a cut and paste from the site I'm trying to match.

The same pattern fails when using livecheck.regex

> livecheck.regex    {newmat(10)\.tar\.gz or newmat10\.zip - newmat10D  
> source files}

> port livecheck newmat => Error: cannot check if newmat was updated  
> (regex didn't match)


Ignoring for the moment that that the regex is far too specific, what  
are the differences between tcl regex and livecheck.regex that cause  
one to match and the other to fail?

For context, I ran into this when trying to do a lookahead match that  
excluded strings with the word "beta" in them. . . something like this:

{newmat([0-9.]+).tar.gz.*(?!.*beta)}


Cheers,

-james


More information about the macports-dev mailing list