我为我的应用程序创建了一个命令系统,但我不知道如何使c#识别我的字符串中的模式。
示例:
添加(variable1,variable2)
如何使c#识别addUser(...)
并做一些事情?
我目前正在使用字符串包含,但如果用户输入add()()()()()
或add((((((
,它仍然可以使用!
请帮忙!
抱歉我的英语!答案 0 :(得分:0)
这可能不完美,但可能会给你一些想法:)
static void Main(string[] args)
{
string example_input = "xxxxx Add(user1, user2) xxxxxx";
string myArgs = getBetween2(example_input, "Add(", ")"); //myArgs = "user1, user2"
if (myArgs != "EMPTY")
{
myArgs = myArgs.Replace(" ", ""); // remove spaces... myArgs = "user1,user2"
string[] userArray = myArgs.Split(',');
foreach (string user in userArray)
{
Console.WriteLine(user);
//Your code here
}
}
Console.ReadKey(); //pause
}
static string getBetween2(string strSource, string strStart, string strEnd)
{
try
{
int Start, End;
if (strSource.Contains(strStart) && strSource.Contains(strEnd))
{
Start = strSource.IndexOf(strStart, 0) + strStart.Length;
End = strSource.IndexOf(strEnd, Start);
return strSource.Substring(Start, End - Start);
}
else
{
return "EMPTY";
}
}
catch
{
return "EMPTY";
}
}