Contents
So, what’s the agenda?
Just in case if you are new comer, what is regex?
3 important regex commands
Check if the user has entered shivkoirala?
Let’s start with the first validation, enter character which exists between a-g?
Enter characters between [a-g] with length of 3?
Enter characters between [a-g] with maximum 3 characters and minimum 1 character?
How can I validate data with 8 digit fix numeric format like 91230456, 01237648 etc?
How to validate numeric data with minimum length of 3 and maximum of 7, ex -123, 1274667, 87654?
Validate invoice numbers which have formats like LJI1020, the first 3 characters are alphabets and remaining is 8 length number?
Check for format INV190203 or inv820830, with first 3 characters alphabetscase insensitive and remaining 8 length numeric?
Can we see a simple validation for website URL’s?
Let’s see if your BCD works for email validation?
Short cuts
Quick references for regex
In this article we will try to understand what regex is and how to remember those cryptic syntaxes easily.
You can watch my .NET interview questions and answers videos on various sections like WCF, Silver light, LINQ, WPF, Design patterns, Entity framework etc
Below is a simple sample of regex. The first step is to import the namespace for regular expressions.
Finally search the pattern over the data to see if there are matches. In case the pattern is matching the ‘IsMatch’ will return true.
Now once you know the above three syntaxes you are ready to write any validation in the world. For instance the below validation shows how the above three entities fit together.
• The above regex pattern will only take characters which lies between ‘a’ to ‘z’. The same is marked with square bracket to define the range.
• The round bracket indicates the minimum and maximum length.
• Finally Carrot sign at the start of regex pattern and dollar at the end of regex pattern specifies the start and end of the pattern to make the validation more rigid.
So now using the above 3 commands let’s implement some regex validation.
Now butting the whole thing together.
Check for format INV190203 or inv820830, with first 3 characters alphabets case insensitive and remaining 8 length numeric?
In the previous question the regex validator will only validate first 3 characters of the invoice number if it is in small letters. If you put capital letters it will show as invalid. To ensure that the first 3 letters are case insensitive we need to use ^[a-zA-Z]{3} for character validation.
Below is how the complete regex validation looks like.
So, what’s the agenda?
Just in case if you are new comer, what is regex?
3 important regex commands
Check if the user has entered shivkoirala?
Let’s start with the first validation, enter character which exists between a-g?
Enter characters between [a-g] with length of 3?
Enter characters between [a-g] with maximum 3 characters and minimum 1 character?
How can I validate data with 8 digit fix numeric format like 91230456, 01237648 etc?
How to validate numeric data with minimum length of 3 and maximum of 7, ex -123, 1274667, 87654?
Validate invoice numbers which have formats like LJI1020, the first 3 characters are alphabets and remaining is 8 length number?
Check for format INV190203 or inv820830, with first 3 characters alphabetscase insensitive and remaining 8 length numeric?
Can we see a simple validation for website URL’s?
Let’s see if your BCD works for email validation?
Short cuts
Quick references for regex
So, what’s the agenda?
Regex has been the most popular and easiest way of writing validations. The only big problem with regex has been the cryptic syntax. Developers who are working on projects with complicated validation always refer some kind of cheat sheet to remember the syntaxes and commands.In this article we will try to understand what regex is and how to remember those cryptic syntaxes easily.
You can watch my .NET interview questions and answers videos on various sections like WCF, Silver light, LINQ, WPF, Design patterns, Entity framework etc
Just in case if you are new comer, what is regex?
Regex or regular expression helps us describe complex patterns in texts. Once you have described these patterns you can use them to do searching, replacing, extracting and modifying text data.Below is a simple sample of regex. The first step is to import the namespace for regular expressions.
using System.Text.RegularExpressions;
The next thing is to create the regex object with the pattern. The below pattern specifies to search for alphabets between a-z with 10 length.Regex obj = new Regex(“[a-z]{10}”);
Finally search the pattern over the data to see if there are matches. In case the pattern is matching the ‘IsMatch’ will return true.
MessageBox.Show(obj.IsMatch(“shivkoirala”).ToString());
3 important regex commands
The best way to remember regex syntax is by remembering three things Bracket, carrot and Dollars.Now once you know the above three syntaxes you are ready to write any validation in the world. For instance the below validation shows how the above three entities fit together.
• The above regex pattern will only take characters which lies between ‘a’ to ‘z’. The same is marked with square bracket to define the range.
• The round bracket indicates the minimum and maximum length.
• Finally Carrot sign at the start of regex pattern and dollar at the end of regex pattern specifies the start and end of the pattern to make the validation more rigid.
So now using the above 3 commands let’s implement some regex validation.
Check if the user has entered shivkoirala?
shivkoirala
Let’s start with the first validation, enter character which exists between a-g?
[a-g]
Enter characters between [a-g] with length of 3?
[a-g]{3}
Enter characters between [a-g] with maximum 3 characters and minimum 1 character?
[a-g]{1,3}
How can I validate data with 8 digit fix numeric format like 91230456, 01237648 etc?
^[0-9]{8}$
How to validate numeric data with minimum length of 3 and maximum of 7, ex -123, 1274667, 87654?
We need to just tweak the first validation with adding a comma and defining the minimum and maximum length inside curly brackets.^[0-9]{3,7}$
Validate invoice numbers which have formats like LJI1020, the first 3 characters are alphabets and remaining is 8 length number?
Now butting the whole thing together.
^[a-z]{3}[0-9]{7}$
Check for format INV190203 or inv820830, with first 3 characters alphabets case insensitive and remaining 8 length numeric?
In the previous question the regex validator will only validate first 3 characters of the invoice number if it is in small letters. If you put capital letters it will show as invalid. To ensure that the first 3 letters are case insensitive we need to use ^[a-zA-Z]{3} for character validation.Below is how the complete regex validation looks like.
^[a-zA-Z]{3}[0-9]{7}$
Can we see a simple validation for website URL’s?
^www.[a-z]{1,15}.(com|org)$
Let’s see if your BCD works for email validation?
^[a-zA-Z0-9]{1,10}@[a-zA-Z]{1,10}.(com|org)$
4 comments:
Just use RegexBuddy and your life will be much easier.
http://www.regexbuddy.com/
Great! Nice! Excellent!
Awesome!
The best regex write-up I have read.
So simple yet so powerful.. Thank you.
Thanks a lot.
Atleast I can write basic validations now. I used to avoid regex, and prefer validations in code.
Post a Comment