LogoReturn to Home RegEx
Integrations
All integrations
AWS API
AWS Lambda
DynamoDB
Oracle
Redshift
Snowflake
GraphQL
Supabase
Twilio
Azure Blob Storage
Slack
SendGrid
Generic HTTP API
AWS S3
Stripe
Microsoft SQL
Salesforce
PostgreSQL
MySQL
MongoDB
HubSpot
Google Sheets
Google BigQuery
Firebase
Airtable
Integrations
About UI Bakery
Log in
Request UI Bakery demo
RegEx library
Email regex PHP
Phone number regex PHP
IP address regex PHP
Date regex PHP
URL regex PHP
Numbers only regex (digits only) PHP
UUID regex PHP
Regex match words PHP
ZIP code regex PHP
GUID regex PHP
Password regex PHP
HTML regex PHP
SSN regex PHP
XML regex PHP
Mac address regex PHP
Street address regex PHP

URL regex PHP

URL regular expressions can be used to verify if a string has a valid URL format as well as to extract an URL from a string.

Discover UI Bakery – an intuitive visual internal tools builder. Try it now!
JavaScript
Python
Java
C#
PHP
No items found.

URL regex that starts with HTTP or HTTPS

HTTP and HTTPS URLs that start with protocol can be validated using the following regular expression

"/^https?:\\/\\/(?:www\\.)?[[email protected]:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)$/"
Test it!
/^https?:\/\/(?:www\.)?[[email protected]:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$/

True

False

Enter a text in the input above to see the result

Example code in Python:

// Validate if a string is a valid URL format
$url_validation_regex = "/^https?:\\/\\/(?:www\\.)?[[email protected]:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)$/"; 
echo preg_match($url_validation_regex, 'https://uibakery.io'); // returns 1

// Extract URL from a string
$extract_url_pattern = "/https?:\\/\\/(?:www\\.)?[[email protected]:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)/";
$string_to_match = 'You can view more details at https://uibakery.io or just ping via email.';
preg_match_all($extract_url_pattern, $string_to_match, $matches);
print_r($matches[0])// matches[0] is ['https://uibakery.io']

URL regex that doesn’t start with HTTP or HTTPS

The regular expression to validate URL without protocol is very similar:

"/^[[email protected]:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)$/"
Test it!
/^[[email protected]:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$/

True

False

Enter a text in the input above to see the result

Example code in Python:

// Validate if a string is a valid URL format without protocol
$url_validation_regex = "/^[[email protected]:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)$/"; 
echo preg_match($url_validation_regex, 'uibakery.io'); // returns 1

// Extract URL without protocol from a string
$extract_url_pattern = "/[[email protected]:%._\\+~#=]{1,256}\\.[a-zA-Z0-9()]{1,6}\\b(?:[-a-zA-Z0-9()@:%_\\+.~#?&\\/=]*)/"; 
$string_to_match = 'You can view more details at uibakery.io or just ping via email.';
preg_match_all($extract_url_pattern, $string_to_match, $matches);
print_r($matches[0])// matches[0] is ['uibakery.io']
Test it!

True

False

Enter a text in the input above to see the result

Notes on URL validation

The above-mentioned regular expressions only cover the most commonly used types of URLs with domain names. If you have some more complex cases you might need a different solution.

Create an internal tool with UI Bakery

Discover UI Bakery – an intuitive visual internal tools builder.

Try it now