Analiza textului
Comenzile de mai jos se rulează în consola browser-ului pe pagina unei cărți, și vor pune rezultatul în clipboard.
Extragerea de cuvinte distincte
Pentru a obține lista de cuvinte distincte, sortate alfabetic:
copy(
Array.from(
new Set(
Array.from(
new Intl.Segmenter('ro', { granularity: 'word' })
.segment(document.body.textContent)
)
.filter(i => i.isWordLike)
.map(i => i.segment)
)
)
.sort()
.join('\n')
);
Frecvența cuvintelor
Pentru a obține lista de cuvinte distincte împreună cu frecvența lor, nefăcînd distincția între minuscule și majuscule:
copy(
Object.entries(
Array.from(
new Intl.Segmenter('ro', { granularity: 'word' })
.segment(document.body.textContent)
)
.filter(i => i.isWordLike)
.map(i => i.segment.toLowerCase())
.reduce((s, i) => (s[i] = (s[i] ?? 0) + 1, s), {})
)
.sort((a,b) => b[1] - a[1])
.map(i => `${i[0]} ${i[1]}`)
.join('\n')
)