Regex to Validate Phone Numbers Internationally (2025)

Published April 2025 · 5 min read

Phone number validation is tricky because formats vary by country. Here are patterns that work.

Universal Pattern (Most Flexible)

^\+?[1-9]\d{6,14}$

Matches any international number with 7-15 digits, optional + prefix.

Country-Specific Patterns

US/Canada

^\+?1?[-.\s]?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$

Matches: +1 (555) 123-4567, 555-123-4567, 5551234567

India

^\+?91?[-.\s]?[6-9]\d{9}$

Matches: +91 9876543210, 9876543210

UK

^\+?44?[-.\s]?\d{10,11}$

E.164 Format (Best for Storage)

^\+[1-9]\d{1,14}$

This is the international standard. Store phone numbers in this format: +14155552671

Pro Tip

Don't over-validate phone numbers with regex. Strip non-digits, check length (7-15), and use a library like libphonenumber for production validation.

Test Your Pattern

Use our Regex Tester to test against sample numbers.

Related