You've successfully subscribed to The Poor Coder | Hackerrank Solutions
Great! Next, complete checkout for full access to The Poor Coder | Hackerrank Solutions
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.
Hackerrank Valid Username Regular Expression Solution

Hackerrank Valid Username Regular Expression Solution

Beeze Aal
Beeze Aal

You are updating the username policy on your company's internal networking platform. According to the policy, a username is considered valid if all the following constraints are satisfied:

  • The username consists of ¬†to ¬†characters inclusive. If the username consists of less than ¬†or greater than ¬†characters, then it is an invalid username.
  • The username can only contain alphanumeric characters and underscores (_). Alphanumeric characters describe the character set consisting of lowercase characters , uppercase characters , and digits .
  • The first character of the username must be an alphabetic character, i.e., either lowercase character ¬†or uppercase character .

Update the value of regularExpression field in the UsernameValidator class so that the regular expression only matches with valid usernames.

Input Format.

The first line of input contains an integer , describing the total number of usernames. Each of the next  lines contains a string describing the username. The locked stub code reads the inputs and validates the username.

Constraints.

  • The username consists of any printable characters.

Output Format.

For each of the usernames, the locked stub code prints Valid if the username is valid; otherwise Invalid each on a new line.

Sample Input 0.

8
Julia
Samantha
Samantha_21
1Samantha
Samantha?10_2A
JuliaZ007
[email protected]
_Julia007

Sample Output 0.

Invalid
Valid
Valid
Invalid
Invalid
Valid
Invalid
Invalid

Explanation 0.

Refer diagram in the challenge statement.

Solution in java8

Approach 1.


class UsernameValidator {
    /*
     * Write regular expression here.
     */
    public static final String regularExpression = "[a-zA-Z](\\w){7,29}";
}

Approach 2.


class UsernameValidator {
    /*
     * Write regular expression here.
     */
    public static final String regularExpression = "^[A-Za-z]\\w{7,29}$";
}

Approach 3.


class UsernameValidator {
    /*
     * Write regular expression here.
     */
    public static final String regularExpression = "\\p{Alpha}(\\w|_){7,29}";
}