Hackerrank | 10 Days of Javascript | Day 7-Solution in JS | Regular-Expressions-II-Hackerrank-Solution-in-JS


Hackerrank | 10 Days of Javascript | Day 7-Solution in JS | Regular-Expressions-II-Hackerrank-Solution-in-JS

Hackerrank Solution 10-Days-of-JavaScript
Day 7: Regular Expressions II Solution

Task

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

  • String  starts with the prefix Mr.Mrs.Ms.Dr., or Er.
  • The remainder of string  (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  is  .

Output Format

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

Sample Input 0

Mr.X

Sample Output 0

true

Explanation 0

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

Sample Input 1

Mrs.Y

Sample Output 1

true

Explanation 1

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

Sample Input 2

Dr#Joseph

Sample Output 2

false

Explanation 2

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

Sample Input 3

Er .Abc

Sample Output 3

false

Explanation 3

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



https://www.hackerrank.com/challenges/js10-regexp-2/problem

Day 7: Regular Expressions II Solution in JS
'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. */ const re = new RegExp(/^(Mr\.|Dr\.|Er\.|Ms\.|Mrs\.)\s?[a-z|A-Z]+$/); /* * Do not remove the return statement */ return re; } function main() { const re = regexVar(); const s = readLine(); console.log(!!s.match(re)); }

Post a Comment

0 Comments