-
Notifications
You must be signed in to change notification settings - Fork 0
/
meeting.js
26 lines (19 loc) · 933 Bytes
/
meeting.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/*
DESCRIPTION: John has invited some friends. His list is:
s =
"Fred:Corwill;Wilfred:Corwill;Barney:Tornbull;Betty:Tornbull;Bjon:Tornbull;Raphael:Corwill;Alfred:Corwill";
Could you make a program that
makes this string uppercase gives it sorted in alphabetical order by last name.
When the last names are the same, sort them by first name. Last name and first
name of a guest come in the result between parentheses separated by a comma.
So the result of function meeting(s) will be:
"(CORWILL, ALFRED)(CORWILL, FRED)(CORWILL, RAPHAEL)(CORWILL, WILFRED)(TORNBULL,
BARNEY)(TORNBULL, BETTY)(TORNBULL, BJON)" It can happen that in two distinct
families with the same family name two people have the same first name too.
Notes You can see another examples in the "Sample tests".
*/
function meeting(s) {
return s.toUpperCase()
.split(';')
.map(name => name.replace(/(\w+):(\w+)/, '($2, $1)')).sort().join('');
}