Validating a Registration Form Using Regular Expression in C#
Today, I will teach you how to validate a Registration Form using Regular Expressions in C#. Regular Expression contains the formated rules and check lengths to validate the inputs of a certain texbox. This method is very useful because it will help you restrict each fields in the form.

Let’s get started:
Open Microsoft Visual Studio 2008 and create new Windows Form Application for C#. Then, do the following design of a Form as follows.

Go to the Solution Explorer, click the “View Code” to make the code editor appear.

In the code editor, import the regural expression library above the namespace.
using System.Text.RegularExpressions;
After that, create the following method inside the class. These methods are use to format the specific fields using the correct patern.
//Method for validating email address
private static Regex Email_Address()
{
string Email_Pattern = @"^(?!\.)(""([^""\r\\]|\\[""\r\\])*""|"
+ @"([-a-z0-9!#$%&'*+/=?^_`{|}~]|(?<!\.)\.)*)(?<!\.)"
+ @"@[a-z0-9][\w\.-]*[a-z0-9]\.[a-z][a-z\.]*[a-z]$";
return new Regex(Email_Pattern, RegexOptions.IgnoreCase);
}
//Method for string only validation
private static Regex StringOnly()
{
string StringAndNumber_Pattern = "^[a-zA-Z]";
return new Regex(StringAndNumber_Pattern, RegexOptions.IgnoreCase);
}
//Method for numbers only validation
private static Regex NumbersOnly()
{
string StringAndNumber_Pattern = "^[0-9]*$";
return new Regex(StringAndNumber_Pattern, RegexOptions.IgnoreCase);
}
//Method for validating password
private static Regex ValidPassword()
{
string Password_Pattern = "(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{8,15})$";
return new Regex(Password_Pattern, RegexOptions.IgnoreCase);
}Go back to the design view, double click the button and do the following code for the validation of the registration form.
//it validate all textboxes when the button clicked
private void button1_Click(object sender, EventArgs e)
{
//for firstname
if (Valid_Fname.IsMatch(txtfName.Text) != true)
{
MessageBox.Show("Firstname accepts only alphabetical characters", "Invalid", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
txtfName.Focus();
return;
}
//for Lastname
if (Valid_Lname.IsMatch(txtLname.Text) != true)
{
MessageBox.Show("Lastname accepts only alphabetical characters", "Invalid", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
txtLname.Focus();
return;
}
//for Address
if (txtAdd.Text == "")
{
MessageBox.Show("Address cannot be empty!", "Invalid", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
txtAdd.Focus();
return;
}
//for Contacts
if (Valid_Contact.IsMatch(txtContact.Text) != true)
{
MessageBox.Show("Contact accept numbers only.", "Invalid", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
txtContact.Focus();
return;
}
//for username
if (txtuname.Text == "")
{
MessageBox.Show("Username cannot be empty!", "Invalid", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
txtuname.Focus();
return;
}
//for password
if (Valid_Password.IsMatch(txtPass.Text) != true)
{
MessageBox.Show("Password must be atleast 8 to 15 characters. It contains atleast one Upper case and numbers.", "Invalid", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
txtPass.Focus();
return;
}
//for Email Address
if (Valid_Email.IsMatch(txtEmail.Text) != true)
{
MessageBox.Show("Invalid Email Address!","Invalid",MessageBoxButtons.OK ,MessageBoxIcon.Exclamation );
txtEmail.Focus();
return;
}
//success message
MessageBox.Show("You are now successfully registered.");
//hidding all object in the form
foreach(Control txt in this.Controls)
{
if (txt is Control)
{
txt.Visible = false;
}
}
}Output:

For all students who need programmer for your thesis system or anyone who needs a sourcecode in any programming languages. You can contact me @ :
Email – [email protected]
Mobile No. – 09305235027 – tnt
| ABOUT PROJECT | PROJECT DETAILS |
|---|---|
| Project Name : | Validating a Registration Form Using Regular Expression in C# |
| Project Platform : | C# |
| Programming Language Used: | C# Programming Language |
| Developer Name : | itsourcecode.com |
| IDE Tool (Recommended): | Visual Studio 2019 |
| Project Type : | Desktop Application |
| Database: | None |
| Upload Date and Time: | June 18, 2016- 6:49 am |
Frequently Asked Questions
How does this C# project work?
Built with C# WinForms (.NET Framework or .NET 6/7/8) and SQL Server backend. Standard structure: Form designer → code-behind event handlers → ADO.NET data access layer → SQL Server. Login form for auth. Ready to extend for BSIT capstone scope.
What .NET and SQL Server versions does this project require?
Most projects in this batch use C# WinForms on .NET Framework 4.5+ (the dominant stack for tutorial sites) with SQL Server 2012 Express or higher. A few newer projects use .NET 6/7/8. To run: install Visual Studio 2019 / 2022 (Community edition is free), install SQL Server Express + SSMS, open the .sln file, build, run.
How do I set up the database for this C# project?
Open SQL Server Management Studio (SSMS) and connect to your SQL Server instance (e.g. localhost\SQLEXPRESS). Right-click Databases > Restore Database OR > New Database then import the included .sql script. Update the connection string in App.config (or in code-behind) with your server name + credentials. Rebuild and run.
Can I use this C# project for a BSIT capstone or thesis?
Yes, but extend it. A bare CRUD form is too narrow for full capstone scope. Add: role-based access (admin/staff/customer login redirect), Crystal Reports or RDLC reports, dashboard with Chart controls, audit log, multi-branch support. Pair with Chapter 1-5 documentation matching your panel’s rubric.
Why am I getting ‘connection error’ or ‘object reference not set’?
Three common C# issues: (1) Connection error: SQL Server isn’t running OR connection string in App.config has wrong server name. Open SQL Server Configuration Manager + verify SQL Server (SQLEXPRESS) service is running. (2) NullReferenceException: a control reference or DB column returned NULL, add a check or use ?? operator. (3) Build error ‘The type or namespace could not be found’: missing assembly reference, add via Project > Add Reference.
Where can I find more C# projects with source code?
Browse the C# Projects hub for the full library. For other .NET stacks see VB.NET Projects (300+ Windows Forms systems). For ASP.NET WebForms see ASP.NET Projects. For BSIT capstone idea lists see 150 Best Capstone Project Ideas.