E.164 is the international telephone numbering plan that ensures each device on the PSTN has globally unique number.
This number allows phone calls and text messages can be correctly routed to individual phones in different countries. E.164 numbers are formatted [+] [country code] [subscriber number including area code] and can have a maximum of fifteen digits.
E.164 Format | Country Code | Country | Subscriber Number |
---|---|---|---|
+14155552671 | 1 | US | 4155552671 |
+442071838750 | 44 | GB | 2071838750 |
+551155256325 | 55 | BR | 1155256325 |
Learn more about how to build international phone number input in HTML and JavaScript on the Twilio blog, including how to transform the phone number input into E.164 format.
You can use the Twilio Lookup API to perform phone number validation and formatting without the need for RegEx. You can also find international telephone input and validation in the Twilio Code Exchange.
Reasons to programmatically verify that a string is in a valid E.164 phone number include:
According to the official ITU E.164 recommendation the format must be a number up to fifteen digits in length starting with a '+'. You can also exclude 0 as the first character since there are no country codes that start with 0. Here is a sample regular expression:
^\+[1-9]\d{1,14}$
However, this will also match numbers that are not a valid phone number. We recommend using the Twilio Lookup API for comprehensive phone number validation.