Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: getopt long, named argument with multiple values

by dasgar (Deacon)
on Jan 07, 2013 at 04:21 UTC ( #1011944=note: print w/ replies, xml ) Need Help??


in reply to getopt long, named argument with multiple values

but there is a warning that it is experimental and there is no hint as to how to implement it.

Actually, if you keep reading, the perldoc on Getopt::Long, it tells you how to use that feature.

From the perldoc:

This can be accomplished by adding a repeat specifier to the option specification. Repeat specifiers are very similar to the {...} repeat specifiers that can be used with regular expression patterns. For example, the above command line would be handled as follows:

GetOptions('coordinates=f{1,}' => \@coor, 'rgbcolor=i{3}' => \@color);

Taking your example code and input, I tested the following code:

use strict; use warnings; use Getopt::Long; my @list; my $getoptresult = GetOptions('list=s{2}' => \@list); foreach my $item (@list) {print "$item\n";}

Being on Windows, I had to use a double-quotes instead of single-quotes, but here's how the script was called:

perl test.pl --list "strA,==,100" "strB,>,1000"

Here's the output:

strA,==,100 strB,>,1000

You'll want to look at the perlre perldoc for more details on what else you can use in "{...} repeat specifiers". In my code, the {1,} is telling Getopt::Long that @list is getting one or more elements.


Comment on Re: getopt long, named argument with multiple values
Select or Download Code
Re^2: getopt long, named argument with multiple values
by jmf11 (Initiate) on Jan 09, 2013 at 00:57 UTC

    Thanks for the help. I am reluctant to use any method in which the documentation says its experimental, but I see now how to use it. Much appreciated.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1011944]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (3)
As of 2014-07-13 12:04 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (249 votes), past polls