Regex for Mobile Number with or without Country Code

I need to validate a text field in my registration form for which I want a Regex.

The textbox will accept a mobile number like 9999999999(10 digit - starting with 7 or 8 or 9). The user may alternatively write +919999999999, where +91 is country code (+91 for India, but can accept any other like +110 or +52), or he may also write 09999999999 (first 0 for own country)

Here, the user have 3 choices,

  1. adding the mobile number with country code
  2. simply without country code or 0 prefixed
  3. With a zero prefixed in mobile number.

Though not required, my page is in, and I am using built-in regular expression validator.


  • From what I can see, this should work. The prefix is optional and is stored into the first match group, with the main number going into the second group.


    But if you can give us some test cases for each, it'd help us in giving you a working regex for what you want.

    Props to SchlaWiener in the comments for the correct limit on the country code length.