微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

perl – 如何使用GetOpt :: Long :: GetOptions解析字符串?

我有一个带有可能的命令行参数的字符串(使用Read-Eval-Print-Loop程序),我希望它在传递给Getopt :: Long时被解析为类似于命令行参数.

详细说明:

我有一个字符串

$str = '--infile /tmp/infile_location --outfile /tmp/outfile'

我希望它由Getoptions解析,以便我更容易添加新选项.

我能想到的一个解决方法是将字符串拆分为空格,并用新数组替换@ARGV,然后调用Getoptions.就像是 …

my @arg_arr = split (/\s/,$input_line);

# This is done so that Getoptions reads these new arguments
@ARGV = @arg_arr;
print "ARGV is : @ARGV\n";
Getoptions (
            'infile=s'  => \$infile,'outfile=s' => \$outfile
           );

有没有好/更好的方法

解决方法

查看 man page for Getopt::Long中的 parsing options from an arbitrary string部分,我认为它完全符合您的要求.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐