JAVASCRIPT
Validate International Phone Numbers with Optional Country Code
Implement a robust regular expression in JavaScript to validate international phone numbers, supporting optional country codes, spaces, hyphens, and parentheses.
function isValidPhoneNumber(phoneNumber) {
const phoneRegex = /^(\+\d{1,3}[- ]?)?\(?\d{3}\)?[- ]?\d{3}[- ]?\d{4}$/;
return phoneRegex.test(phoneNumber);
}
console.log(isValidPhoneNumber("+1 (555) 123-4567")); // true
console.log(isValidPhoneNumber("555-123-4567")); // true
console.log(isValidPhoneNumber("(555) 123-4567")); // true
console.log(isValidPhoneNumber("+44 20 7946 0958")); // true
console.log(isValidPhoneNumber("12345")); // false
How it works: This JavaScript function `isValidPhoneNumber` uses a regular expression to validate if a given string represents a valid international phone number. It flexibly handles various formats, including optional country codes prefixed with a `+`, parentheses around area codes, and allows spaces or hyphens as separators, making it versatile for global user input.