【发布时间】:2010-09-09 14:59:51
【问题描述】:
我被正则表达式困住了。该程序是用 C# 编写的控制台应用程序。有几个命令。我想首先检查参数是否正确。我认为使用 Regex 会很容易,但做不到:
var strArgs = "";
foreach (var x in args)
{
strArgs += x + " ";
}
if (!Regex.IsMatch(strArgs, @"(-\?|-help|-c|-continuous|-l|-log|-ip|)* .{1,}"))
{
Console.WriteLine("Command arrangement is wrong. Use \"-?\" or \"-help\" to see help.");
return;
}
用法是:
program.exe [-options] [domains]
问题是,程序接受所有命令。我还需要检查域之前的“-”前缀命令。我觉得这个问题不难解决。
谢谢...
【问题讨论】:
-
哇,想想我只是使用一个开关,因为它更容易编码和维护:\