0

我希望能够仅使用以下格式的 - 和 + 字符来传递参数,以拍手或其他 arg lib。

program -i infile.txt -o outfile.txt - stra strb strc - strd stre strf + strg + strh stri

然后在程序中我可以获得具有以下分组的向量...

[stra, strb, strc]

[strd, stre, strf]

[strg]

[strh, stri]

这在 Clap 或其他 rust arg 库中是否可行?如果是这样,我该如何完成?

4

1 回答 1

2

这是一个不寻常的符号,我不希望任何图书馆都有它的选择。

通常--会停止解析参数,因此您可以-在此分隔符之后使用您的:

program -i infile -- special - separator - args

否则,您需要std::env::args().collect::<Vec<_>>()自己动手,并在将这些 args 传递给 Clap 之前对其进行拆分或预处理。

于 2020-04-15T01:40:20.277 回答