Text Analyzer
by Vladimir
HTML
<textarea></textarea><br />
<input type="button" value="test" class="test" />
<table>
<tr>
<td>Symbols</td>
<td class="data-symbols"></td>
</tr>
<tr>
<td>Symbols without space</td>
<td class="data-symbols-clear"></td>
</tr>
<tr>
<td>Words</td>
<td class="data-words"></td>
</tr>
</table>
<table class="freqs">
</table>
CSS
textarea {
width: 100%;
height: 300px;
}
table {
border: 1px solid #000;
}
td {
border: 1px solid #000;
}
JavaScript
$('.test').click(function() {
var text = $('textarea').val().replace(/[^\d\w ]+/g," ");
$('.data-symbols').html(text.length);
var emptyText = text.replace(/[ ]+/g, '');
$('.data-symbols-clear').html(emptyText.length);
var words = text.split(' ');
$('.data-words').html(words.length);
var wordFreqs = {};
for(var i = 0; i < words.length; i++) {
var word = words[i].toLowerCase();
if(word in wordFreqs) {
wordFreqs[word]++;
} else {
wordFreqs[word] = 1;
}
}
var html = "";
for(var j in wordFreqs) {
html += "<tr><td>" + j + "</td><td>" + wordFreqs[j] + "</td></tr>";
}
$('.freqs').html(html);
});