tools / regex library / username
regex pattern · ready to copy

Regex for matching usernames (3-20 chars, alphanum + underscore)

Common social/forum username constraint. Letters, digits, underscores. Starts with letter.

intermediate javascript / pcre / python4 use cases

The pattern

^[a-zA-Z][a-zA-Z0-9_]{2,19}$

Test cases

InputResult
alice_99matches
Bob123matches
x_factormatches
1starts_with_digitrejects
ab (too short)rejects
_underscore_firstrejects
has-dashrejects

Edge cases & caveats

Different platforms have different rules (Twitter: 4-15 alphanum + `_`; GitHub: dash allowed, 39-char max). Adapt the length and char-class to your spec rather than copying blindly.

Common use cases

Try variations against your data
regexlab is a free in-browser tester with side-by-side match highlighting, group inspector, and named-capture export to JS/Python/PCRE.
Open regexlab  

Related

jwt · url · iso 8601 date · semver version