Ключевые слова из строки - PullRequest
       26

Ключевые слова из строки

2 голосов
/ 27 августа 2009

Кто-нибудь знает о доступной функции PHP, которая берет фрагмент текста, скажем, длиной в несколько сотен слов и производит массив ключевых слов? То есть. наиболее важные, часто встречающиеся уникальные термины?

Спасибо Philip

Ответы [ 2 ]

7 голосов
/ 27 августа 2009

Такой функции не существует (было бы волшебно, если бы она была), но чтобы что-то запустить, вы могли бы сделать следующее:

  1. Разделить текст на пробел, создание массива слов.
  2. Удалить стоп-слов и ненужные знаки препинания и символы (возможно, с использованием регулярных выражений - см. preg_replace).
  3. Подсчитайте количество вхождений каждое слово в оставшемся массиве, и отсортировать по порядку частоты (поэтому наиболее часто встречающееся слово находится в первом смещении, т.е. $words[0]).
  4. Используйте array_unique , чтобы удалить дублирует, создавая массив уникальных ключевых слов, упорядоченных по частота встречаемости.
0 голосов
/ 27 августа 2009

Нечто подобное может сработать:

$thestring = 'the most important, frequently occuring unique terms?';
$arrayofwords = explode(" ", $thestring);
echo print_r($arrayofwords);

Также вы можете заменить запятую "," на пробел, чтобы получить чистые ключевые слова.

$thestring = 'the most important, frequently occuring unique terms?';
$cleaned_string = str_replace(",", "", "$thestring");
$arrayofwords = explode(" ", $cleaned_string);
echo print_r($arrayofwords);
...