gpt4 book ai didi

c# - 如何用正则表达式检查参数?

转载 作者:行者123 更新时间:2023-11-30 14:18:58 25 4
gpt4 key购买 nike

我被正则表达式困住了。该程序是用 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]

问题是,程序接受所有命令。我还需要检查“-”前缀命令是否在域之前。我觉得这个问题不难解决。

谢谢...

最佳答案

既然你最终会写一个 switch 语句来处理选项,你最好在那里做检查:

switch(args[i])
{
case "-?": ...
case "-help": ...
...
default:
if (args[i][0] == '-')
throw new Exception("Unrecognised option: " + args[i]);
}

关于c# - 如何用正则表达式检查参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3677810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com