Ingernirated
@Ingernirated
Романыч

Как в тексте найти одинаковые слова?

Добрый день, подскажите, как в тексте найти одинаковые слова?
Например, есть предложения
<p>Пацаны искали пацанов, чтобы пацаны успели поесть грибов</p>

<p>В лесу ежи, ежи ищут ножи</p>
Как получить переменной значение слова, которые в нём повторяется?
  • Вопрос задан
  • 928 просмотров
Решения вопроса 2
Сделать из строки массив с разделителем пробелом и там искать
Ответ написан
Комментировать
sergiks
@sergiks Куратор тега JavaScript
♬♬
Текст разбить на слова без пробелов и знаков пунктуации, в нижнем регистре, и сосчитать.

Вывести слова, которые встречаются более 1 раза:
var words = {}, i, src = document.getElementById('text')
	.innerText
	.split(/[\s\.,:;!?]+/)
	.map(function(el){ return el.toLowerCase()})
;

for(i=0; i<src.length; i++) {
	word = src[i];
  if( words.hasOwnProperty(word)) words[word]++;
	else words[word] = 1;
}

var dupes = [];
for(i in words) if(words[i] > 1) dupes.push(i);
var p = document.createElement("p");
p.innerText = JSON.stringify(dupes);
document.body.appendChild(p);

Fiddle
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы