在c#中检查自定义格式的字符串

时间:2015-11-17 07:54:01

标签: c#

我为我的应用程序创建了一个命令系统,但我不知道如何使c#识别我的字符串中的模式。

示例:

  

添加(variable1,variable2)

如何使c#识别addUser(...)并做一些事情?

我目前正在使用字符串包含,但如果用户输入add()()()()()add((((((,它仍然可以使用!

请帮忙!

抱歉我的英语!

1 个答案:

答案 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";
        }
    }