Validate username format with letters, numbers, and underscores. Perfect for user registration systems.
^[a-zA-Z0-9_]20$
^
- Start of string[a-zA-Z0-9_]
- Letters, numbers, or underscore20
- Between 3 and 20 characters$
- End of string// Username validation regex
const usernameRegex = /^[a-zA-Z0-9_]{3,20}$/;
function validateUsername(username) {
return usernameRegex.test(username);
}
// Usage examples
console.log(validateUsername("user123")); // true
console.log(validateUsername("john_doe")); // true
console.log(validateUsername("admin_user")); // true
console.log(validateUsername("ab")); // false (too short)
console.log(validateUsername("user-name")); // false (contains hyphen)
"user123"
Valid username with letters and numbers
"john_doe"
Valid username with underscore
"admin_user"
Valid username with underscore
"TestUser"
Valid username with mixed case
"user_123_test"
Valid username with multiple underscores
"ab"
Too short (less than 3 characters)
"this_username_is_too_long_to_be_valid"
Too long (more than 20 characters)
"user-name"
Contains hyphen (not allowed)
"user name"
Contains space (not allowed)
"user@name"
Contains special character (not allowed)
Share this regex pattern with others or save it to your favorites