Regular Expression is a pattern that matched a given input string. The pattern can be formed by using meta characters.
Meta characters
char meaning
^ => beginning of string
$ => end of string
. => any character except newline
* =>match 0 or more times
+ =>match 1 or more times
? =>match 0 or 1 times; or: shortest match
| =>alternative
( ) =>grouping; “storing”
[ ] =>set of characters
{ } =>repetition modifier
$ => end of string
. => any character except newline
* =>match 0 or more times
+ =>match 1 or more times
? =>match 0 or 1 times; or: shortest match
| =>alternative
( ) =>grouping; “storing”
[ ] =>set of characters
{ } =>repetition modifier
Repetition
a* =>zero or more a’s
a+ =>one or more a’s
a? =>zero or one a’s (i.e., optional a)
a{m} =>exactly m a’s
a{m,} =>at least m a’s
a{m,n} =>at least m but at most n a’s
a+ =>one or more a’s
a? =>zero or one a’s (i.e., optional a)
a{m} =>exactly m a’s
a{m,} =>at least m a’s
a{m,n} =>at least m but at most n a’s
Syntax in JavaScript
var patt=new RegExp(pattern,modifiers);or
var patt=/pattern/modifiers;
Modifiers
1) The i modifier is used to perform case-insensitive matching.2) The g modifier is used to perform a global match
Pattern
- Username [Min 8 Chars and alpha numeric characters)/^[a-z0-9]{8,}/i
- Email ID/^[a-z0-9._-]+@[a-z]+.[a-z.]{2,5}$/i
- Date of Birth/^[0-9]{1,2}-[0-9]{1,2}-[0-9]{4}$/i
- Mobile Number/^([+0-9]{1,3})?([0-9]{10,11})$/i
- Web Site URL/^[http://]+[www]?.[0-9a-z_.]+.[a-z.]{2,5}$/i
- Pincode/^[0-9]{6}$/i
SAMPLE CODE
<!DOCTYPE html> <html> <head> <title>Test Script</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <div> <form id="myform" method="post"> Enter the Username <input type="text" id="uname" /> <br /> <input type="submit" value="Validate"/> </form> <script> document.getElementById("myform").onsubmit =function() { var pattern = /^[a-z0-9_]{8,25}$/i; var text = document.getElementById("uname"); if(!pattern.test(text.value)) { alert("Enter a valid Username"); text.focus(); } else { alert("Thank You"); } }; </script> </div> </body> </html>
With Regards,
Animesh Nanda
Sr.Software Engineer | Photon Infotech
Bengaluru | Karnataka | INDIA.
No comments:
Post a Comment