De cate ori am folosit un cuvant dintr-un array in alt array

Pare a fi o problema clasica care se rezolva cu vector de frecventa

let story = "really very basically bla bla ba afara este frig. Ana are mere. Javascript drives me very mad. But basically it is used everywhere";

let overUsedWords = ["really", "very", "basically"]
let storyWords = story.split(" ");


let freq = {}
for (word of storyWords)
{
    if(word === overUsedWords[0] || word === overUsedWords[1] || word === overUsedWords[2])
    {
        if(freq[word])
        {
            freq[word]++
        }
        else
        {
            freq[word] = 1;
        }   
    }
    
}
console.log(freq);

Cel putin asta ar fi idea mea. Asta daca am inteles bine :slight_smile:

LE:

let story = "really very basically bla bla ba afara este frig. Ana are mere. Javascript drives me very mad. But basically it is used everywhere. Very Ana Ana Ana really";

let overUsedWords = ["really", "very", "basically", "Ana"];
let storyWords = story.split(" ");

let freq = {}
for (storyWord of storyWords)
{
       for(overUsedWord of overUsedWords)
       {
            if(storyWord.toLowerCase() === overUsedWord.toLowerCase())
            {
                if(freq[overUsedWord])
                {
                    freq[overUsedWord]++;
                }
                else
                {
                    freq[overUsedWord] = 1;
                }
            }            
       }        
    
}

console.log(freq);

Abordarea este în aceeași tema ca mai sus, dar nu mai verific frecventa tuturor cuvintelor ci doar cele din overUsedWords. Când lucrezi cu text și stringuri ar trebui sa lucrezi cu litere ori mici, ori mari.
Exemplu: Daca în acel text aveai “…Very…” și nu apărea în overUsedWords, nu era luat în considerare

3 Likes