← Back to all snippets
JAVASCRIPT

Validate URLs with Regular Expressions

Implement robust URL validation in JavaScript using a regular expression to ensure proper web address formatting for user inputs and links.

function isValidURL(url) {
  const urlRegex = /^(https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/[a-zA-Z0-9]+\.[^\s]{2,}|[a-zA-Z0-9]+\.[^\s]{2,})$/i;
  return urlRegex.test(url);
}

// Examples:
// console.log(isValidURL("https://www.example.com")); // true
// console.log(isValidURL("http://example.org/path?query=1")); // true
// console.log(isValidURL("ftp://bad.url")); // false
// console.log(isValidURL("example.com")); // true (sometimes desired)
How it works: The `isValidURL` function utilizes a comprehensive regular expression to validate various URL formats. This regex is designed to match common HTTP/HTTPS protocols, domain names (with or without `www`), and paths, providing a reliable check for web addresses in forms or content. The `i` flag makes the pattern case-insensitive. While robust, complex URL patterns can sometimes be simplified depending on specific requirements.

Need help integrating this into your project?

Our team of expert developers can help you build your custom application from scratch.

Hire DigitalCodeLabs