c# - 如何验证 NRIC 的文本框

标签 c# winforms visual-studio-2010

我正在用c#和窗口窗体做一个项目,现在处于测试模式,但是我遇到了一个问题

  1. 我有一个文本框,基本上供人们输入他们的身份证,但我不知道如何编写代码来验证文本框中的身份证

  2. 另一件事我从不说,我有学生证号,如何验证文本框中的长度??

有人知道吗??? NRIC 就像 S1234567H...所以基本上前面必须是 S 字符,中间是 7 位数字,最后一个是任何字母

提前致谢

我唯一知道的就是把代码放在这里:

 private void nricTextbox_Validating(object sender, CancelEventArgs e)
 {
 }

最佳答案

好的,我已经创建了一个简单的 Windows 窗体应用程序,放在 TextBox 组件上 在按钮单击事件处理程序中使用名称 textBox1 和名称为 ValidateButton 的按钮控件我已经编写了这段代码

using System;
using System.Windows.Forms;

namespace ValidateSimple
{
  using System.Text.RegularExpressions;

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void ValidateButton_Click(object sender, EventArgs e)
    {
        string strRegex = @"^(S\d{7}[a-zA-Z])$";

        Regex myRegex = new Regex(strRegex);

        string strTargetString = textBox1.Text;
        if (myRegex.IsMatch(strTargetString))
        {
            MessageBox.Show(@"The NRIC is correct!");
        }
        else
        {
            MessageBox.Show(@"The NRIC is incorrect!");

        }

    }
  }
}

运行应用程序并将您的 NRIC 输入文本框并按下按钮 如果输入正确将显示适当的消息,否则不正确的 NRIC 消息

您也可以使用 MaskedTextBox 控件来代替查看 msdn

并在属性 Mask 中放置此 S0000000L S - 是你的开始字母 0 - 表示任何数字 L - 表示需要字母 a-z 和 A-Z 如果您将使用 MaskedTextBox 控件,则用户不能输入不正确的值

有关模式信息,请查看 msdn

关于c# - 如何验证 NRIC 的文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6532426/

相关文章:

c# - 如何在反序列化之前区分 XML 文件的类型?

c# - Facebook 应用程序如何工作?

c# - 从表单句柄创建图形的奇怪行为

php - 连接到 wampserver MySQL 在 PHP 中有效,但在 vb.NET 中无效

visual-studio-2010 - 共享开发机器 (rdp) 上的 IIS Express

c# - 不带空格的字符串长度 (C#)

c# - 通过 API 发送 IM

c# - 文本框自定义onPaint

c# - 静态事件未在不同的 dll 中订阅

visual-studio-2010 - 双显示器上的 Visual Studio 2010 查找和替换对话框被重击