MySQLdata validation

Match Phone Number Format in MySQL with REGEXP

Validate and filter phone numbers in MySQL using REGEXP. Examples for US, international, and custom phone formats in SQL.

The Regex Pattern

Regex pattern

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

Use this pattern with MySQL's REGEXP operator.

MySQL SQL Example

-- Filter a contacts table in MySQL to find rows where phone_number matches standard phone number formats using REGEXP
SELECT *
FROM your_table
WHERE your_column REGEXP '^(\\+?1[\\s.-]?)?(\\(\\d{3}\\)|\\d{3})[\\s.-]?\\d{3}[\\s.-]?\\d{4}$';

How This Works

Filter a contacts table in MySQL to find rows where phone_number matches standard phone number formats using REGEXP. The regex pattern is used with MySQL's REGEXP operator to filter rows at the database level.

Using regex directly in SQL is efficient for use cases like data validation โ€” it avoids loading data into application memory just to filter it with a regex.

Need a custom SQL + Regex query?

Describe your specific use case in plain English. RegSQL generates the exact MySQL query with the right regex pattern for your schema.

Related SQL Patterns