关于c#:命令解析器/解释器

command parser/interpreter

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Best way to parse command line arguments in C#?

我正在寻找一个可以提供简单命令解析的库。类似于命令行解析器的东西是可以的。命令行解析器的问题在于获取实际的命令并轻松地将其简化为选项。

例如,我可能想打开调试。为此,我想做这样的事情。

1
debug on -f"c:\logs\debug file.txt"

如果我想打开优化,我可以这样做。

1
optimize on

1
optimize off

虽然我可能能够得到一个标准的命令行解析器来完成这项工作,但是在实际使用标准的命令行解析器之前需要进行一些预处理。我只是在寻找一个不需要大量调试的优雅解决方案。

附带说明一下,有人建议在.NET中使用python吗?


python有一个内置的argparse python argparser

对于C,您可以使用:C argparse

如果我需要自己写一个,我首先要写一个基于堆栈的语言解释器,然后很容易解析选项。你只要写lexer就可以写一半的语法。

python就是其中一种,当你将它添加到任何东西中时,它会立即变得非常棒。所以您只能想象在.NET中使用python会是什么样子。从个人经验来看,使用Ironpython可以很快完成很多工作。(哦,您也可以使用TPL(任务并行库)。

玩得高兴!