Algorithm


Hacker rank Problem Name: 10 Days of JavaScript - Day 7: Regular Expressions II

Hacker rank Problem Link: https://www.hackerrank.com/challenges/js10-regexp-2/problem?isFullScreen=true

Day 7: Regular Expressions II

Task

Complete the function in the editor below by returning a RegExp object, re, that matches any string s satisfying both of the following conditions:

  • String s starts with the prefix Mr., Mrs., Ms., Dr., or Er.
  • The remainder of string s (i.e., the rest of the string after the prefix) consists of one or more upper and/or lowercase English alphabetic letters (i.e., [a-z] and [A-Z]).

Constraints

  • The length of string s is >= 3.

Output Format

The function must return a RegExp object that matches any string s satisfying both of the given conditions.

Sample Input 0

1
Mr.X

Sample Output 0

1
true

Explanation 0

This string starts with Mr., followed by an English alphabetic letter (X).

Sample Input 1

1
Mrs.Y

Sample Output 1

1
true

Explanation 1

This string starts with Mrs., followed by an English alphabetic letter (Y).

Sample Input 2

1
Dr#Joseph

Sample Output 2

1
false

Explanation 2

This string starts with Dr# instead of Dr., so it’s invalid.

Sample Input 3

1
Er .Abc

Sample Output 3

1
false

Explanation 3

This string starts with Er but there is a space before the period (.), making the string invalid.

 

Code Examples

#1 Code Example with Javascript Programming

Code - Javascript Programming


'use strict';

process.stdin.resume();
process.stdin.setEncoding('utf-8');

let inputString = '';
let currentLine = 0;

process.stdin.on('data', inputStdin => {
    inputString += inputStdin;
});

process.stdin.on('end', _ => {
    inputString = inputString.trim().split('\n').map(string => {
        return string.trim();
    });
    
    main();    
});

function readLine() {
    return inputString[currentLine++];
}

function regexVar() {
    /*
     * Declare a RegExp object variable named 're'
     * It must match a string that starts with 'Mr.', 'Mrs.', 'Ms.', 'Dr.', or 'Er.', 
     * followed by one or more letters.
     */
    var re = (/^(Mr\.|Dr\.|Er\.|Ms\.|Mrs\.)\s?[a-z|A-Z]+$/);
    
    /*
     * Do not remove the return statement
     */
    return re;
}

Copy The Code & Try With Live Editor

Input

x
+
cmd
Mr.X

Output

x
+
cmd
true
Advertisements

Demonstration


Previous
[Solved] #4 Day 4: Create a Rectangle Object in Javascript HackerRank - HackerRank Javascript in 10 days
Next
[Solved] #8 Day 8: Create a button in Javascript HackerRank - HackerRank Javascript in 10 days