github-username-regex
A regular expression that only matches a valid Github username
import githubUsernameRegex from 'github-username-regex';
githubUsernameRegex.test('john');
githubUsernameRegex.test('john-due');
githubUsernameRegex.test('john-due-');
According to the form validation messages on Join Github page,
- Github username may only contain alphanumeric characters or hyphens.
- Github username cannot have multiple consecutive hyphens.
- Github username cannot begin or end with a hyphen.
- Maximum is 39 characters.
Installation
npm install github-username-regex
bower install github-username-regex
API
import githubUsernameRegex from 'github-username-regex';
githubUsernameRegex
Type: RegExp
(/^[a-z\d](?:[a-z\d]|-(?=[a-z\d])){0,38}$/i
)
githubUsernameRegex.test('a');
githubUsernameRegex.test('0');
githubUsernameRegex.test('a-b');
githubUsernameRegex.test('a-b-123');
githubUsernameRegex.test('a'.repeat(39));
githubUsernameRegex.test('');
githubUsernameRegex.test('a_b');
githubUsernameRegex.test('a--b');
githubUsernameRegex.test('a-b-');
githubUsernameRegex.test('-a-b');
githubUsernameRegex.test('a'.repeat(40));
Note that this module doesn't take reserved usernames into consideration. For example it matches help
, about
and pricing
, though they are reserved words and cannot be used as Github usernames.
License
Creative Commons Zero v1.0 Universal