Regex
regex
December 1, 20223 min read

Regex for India PIN Code validation

PIN Code stands for Postal Index Code. It represents a unique postal code using which you can identify a region or area or locality depending on how it is defined. In this article let's understand how we can create a regex for PIN Code and how regex can be matched for PIN Code.

Regex (short for regular expression) is a powerful tool used for searching and manipulating text. It is composed of a sequence of characters that define a search pattern. Regex can be used to find patterns in large amounts of text, validate user input, and manipulate strings. It is widely used in programming languages, text editors, and command line tools.

Structure of India PIN Code

  • It has to be six digits.
  • It should not start with zero.
  • First digit of the pin code must be from 1 to 9.
  • Next five digits of the pin code may range from 0 to 9.
  • It should allow only one white space, but after three digits, although this is optional.

Regex for checking if India PIN Code is valid or not

Regular Expression-

/^[1-9]{1}[0-9]{2}\s{0, 1}[0-9]{3}$/gm

Test string examples for the above regex-

Input StringMatch Output
33 43 22does not match
121212matches
000121does not match
454 322matches

In case you want to skip validating the space inbetween, you can use the following regular expression-

/^[1-9]{1}[0-9]{2}[0-9]{3}$/gm

Here is a detailed explanation of the above regex-

/^[1-9]{1}[0-9]{2}\s{0,1}[0-9]{3}$/gm

^ asserts position at start of a line
Match a single character present in the list below [1-9]
{1} matches the previous token exactly one time (meaningless quantifier)
1-9 matches a single character in the range between 1 (index 49) and 9 (index 57) (case sensitive)
Match a single character present in the list below [0-9]
{2} matches the previous token exactly 2 times
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
\s matches any whitespace character (equivalent to [\r\n\t\f\v ])
{0,1} matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
Match a single character present in the list below [0-9]
{3} matches the previous token exactly 3 times
0-9 matches a single character in the range between 0 (index 48) and 9 (index 57) (case sensitive)
$ asserts position at the end of a line
Global pattern flags
g modifier: global. All matches (don't return after first match)
m modifier: multi line. Causes ^ and $ to match the begin/end of each line (not only begin/end of string)

Hope this article was useful to match India PIN code number regex pattern.

Share this blog
Tagged in :
regex
Like what you read?
Subscribe to our Newsletter
Subscribe to our email newsletter and unlock access to members-only content and exclusive updates.
About the Author
Satvik
Satvik
Entrepreneur
Satvik is a passionate developer turned Entrepreneur. He is fascinated by JavaScript, Operating System, Deep Learning, AR/VR. He has published several research papers and applied for patents in the field as well. Satvik is a speaker in conferences, meetups talking about Artificial Intelligence, JavaScript and related subjects. His goal is to solve complex problems that people face with automation. Related projects can be seen at - [Projects](/projects)
View all articles
Previous Article
February 20, 20222 min read
Next Article