Как проверить пользовательский ввод на правильное форматирование - PullRequest
3 голосов
/ 09 июня 2010

Это то, что я до сих пор придумал

private void CheckFormatting()
{
    StringReader objReaderf = new StringReader(txtInput.Text);
    List<String> formatTextList = new List<String>();

     do
     {
         formatTextList.Add(objReaderf.ReadLine());
     } 
     while (objReaderf.Peek() != -1);

     objReaderf.Close();
     for (int i = 0; i < formatTextList.Count; i++)
     {

     } 
}

Для чего он предназначен, это проверить, что пользователь ввел свою информацию в этом формате Gxx: xx: xx: xx JGxx где«x» может быть любым целым числом.

Как видите, пользователь вводит свои данные в многострочное текстовое поле.Затем я возьму эти данные и внесу их в список.Следующая часть, где я застрял.я создаю цикл for, чтобы проходить список строка за строкой, но я предполагаю, что мне также нужно будет проходить каждую строку символ за символом.Как мне это сделать?или есть более быстрый способ сделать это?

заранее спасибо

Ответы [ 4 ]

1 голос
/ 09 июня 2010

Попробуйте это.

    if (!System.Text.RegularExpressions.Regex.IsMatch("your_text", "G[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2} JG[0-9]{2}"))
    {
        //Error!
    }
1 голос
/ 09 июня 2010

Используйте регулярное выражение В вашем случае, G \ d \ d: \ d \ d: \ d \ d: \ d \ d: JG \ d \ d должен работать (не проверял) использовать пространство имен System.Text.RegularExpressions

1 голос
/ 09 июня 2010

Рекомендуется проверять вводимые пользователем данные при вводе данных и четко указывать, какой формат должен быть в вашем проекте ввода.

Вы можете добавить серию текстовых полей для каждого числового раздела, разделенных:, и затем проверить каждое текстовое поле для числовых значений.

Я предполагаю, что это страница asp.net?если да, то вы можете использовать валидаторы asp.net как на клиенте, так и на сервере.

т.е.

<asp:textbox id="textbox1" runat="server"/>
<asp:RegularExpressionValidator id="valRegEx" runat="server"
    ControlToValidate="textbox1"
    ValidationExpression="[0-9]*"
    ErrorMessage="* Your entry is not a valid number."
    display="dynamic">*
</asp:RegularExpressionValidator>
1 голос
/ 09 июня 2010

Регулярные выражения - это быстрый способ сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...