-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcount.js
36 lines (30 loc) · 1.02 KB
/
count.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
27
28
29
30
31
32
33
34
35
36
const sonnet = `Let me not to the marriage of true minds
Admit impediments. Love is not love
Which alters when it alteration finds,
Or bends with the remover to remove.
O no, it is an ever-fixed mark
That looks on tempests and is never shaken;
It is the star to every wand'ring bark,
Whose worth's unknown, although his height be taken.
Love's not time's fool, though rosy lips and cheeks
Within his bending sickle's compass come:
Love alters not with his brief hours and weeks,
But bears it out even to the edge of doom.
If this be error and upon me proved,
I never writ, nor no man ever loved.`;
let uniques = {};
//let words = sonnet.match(/\w+/g);
let words = sonnet.match(/\b[a-zA-Z]+-[a-zA-Z]+\b|\w+\'\w+|\w+/g);
for (let i=0; i<words.length; i++) {
let word = words[i];
//console.log(!!uniques[word]);
if(uniques[word]) {
console.log(`Old word: ${word}`)
uniques[word] += 1;
} else {
console.log(`new word: ${word}`)
uniques[word] = 1;
}
}
console.log(uniques);
console.log(words.length);