[devscripts] 01/01: uscan: check if match found
Osamu Aoki
osamu at debian.org
Mon Oct 5 13:51:24 UTC 2015
On Sun, Oct 04, 2015 at 10:28:33AM -0400, James McCoy wrote:
> > if (defined $download_version) {
> > print STDERR "$progname debug: download version requested: $download_version\n" if $debug;
> > if ($download_version =~ m/^([-~\+\w]+)(\.[-~\+\w]+)?(\.[-~\+\w]+)?(\.[-~\+\w]+)?$/) {
> > - $download_version_short1 = "$1";
> > - $download_version_short2 = "$1$2";
> > - $download_version_short3 = "$1$2$3";
> > + $download_version_short1 = "$1" if defined $1;
> > + $download_version_short2 = "$1$2" if defined $2;
> > + $download_version_short3 = "$1$2$3" if defined $3;
>
> What about something like this?
>
> if ($download_version =~ m/^[-~+\w]+(?:\.[-~+\w]+){0,3}$/) {
> ($download_version_short1,
> $download_version_short2,
> $download_version_short3) = split(/\./, $download_version);
> }
I thought about "split", too. But what we need requires to do like:
if ($download_version =~ m/^[-~+\w]+(?:\.[-~+\w]+){0,3}$/) {
($short1,
$_short2,
$_short3) = split(/\./, $download_version);
}
$download_version_short1 = "$short1";
$download_version_short2 = "$short1.$short2";
$download_version_short3 = "$short1.$short2.$short3";
...
or loop over when matching with directory string... long tangled ...
Anyway, mine is not very elegant style either. I found that the Linux,
GNOME, and KDE have usually max 4 groups in version. Directory may be
organized into 2 levels indexed. Thus I made code like this as
practical compromise to address -- download-(deb)version etc.
Osamu
More information about the devscripts-devel
mailing list