Показать сообщение отдельно
  #2 (permalink)  
Старый 08.06.2012, 15:01
Аватар для RazZzeR
Кандидат Javascript-наук
Отправить личное сообщение для RazZzeR Посмотреть профиль Найти все сообщения от RazZzeR
 
Регистрация: 11.12.2011
Сообщений: 146

Вот пример подобной работы, пару функций можно взять из нее.


/**
Принимает два аргумента: строку, состоящую из
слов для поиска, разделённых пробелами и вторую строку, в которой
будет осуществляться поиск. Формат содержиммого второй строки не критичен.

Функция осуществляет поиск слов во второй строке и возвразает массив
совпавших слов, отсортированный в алфавитном порядке.

Поиск производится без учёта регистра и границы слов.
То есть, если ищем слово «Студент», то будет зафиксировано совпадение,
если в тексте есть слово «студента».

*/
function findWords(pattern, text) {
var result = [ ], wordForTest;
pattern = pattern.split(" ");
text = text.toLowerCase();
while(pattern.length) {
wordForTest = pattern.pop().toLowerCase();
if (text.indexOf(wordForTest) !== -1) {
result.push(wordForTest);
}
}
result.sort();
return result;
}

// Проверим работу функции
var
words = "университет мощный тайфун уникальный академия студент аппендикс хром",
string = "Студент, как тайфун: уникальный, мощный, но непредсказуемый и пользы от него, для университета, никакой. Ваша академия."
;

alert( findWords( words, string ).join( "\n" ) );
Ответить с цитированием