Встала задача написать ПРОСТЕНЬКИЙ генератор keyword'ов для определенной страницы (текста); Быренько набросал код, вот что пока получилось: PHP: <?php Error_Reporting(E_ALL & ~E_NOTICE); if ($_GET['mod'] == 'getkw') { $body = $_POST['body']; // убираем html и php теги $body = strip_tags($body); // преобразуем весь текст к нижнему регистру $body = strtolower($body); // удаляем ненужные символы $del_chars = array('.', ',', ':', ';', '\\', '|', '/', '`', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '=', '~', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '"', '№', '?', '_', '+', '[', ']', '{', '}', '<', '>', "\$", "\t", "\r", "\n", "'", '»', '“', '”', 'nbsp'); $body = str_replace($del_chars, ' ', $body); // удаляем одиночные символы $body = preg_replace(array('/(\W+)(\S)(\W+)/', '/(\s+)(\S)(\s+)/'), ' ', $body); // удаляем лишнее кол-во символов $body = preg_replace('/\s+/', ' ', $body); // создаем массив $body_array = explode(' ', trim($body)); $keywords = array(); // считаем кол-во совпадений foreach($body_array as $value) { if (in_array(trim($value), $body_array)) { $keywords[$value]++; } else { $keywords[$value] = '1'; } } // сортируем arsort($keywords); // срезаем верхушку самых частых слов $out = array_slice($keywords, 0, 30); header('Content-type: text/plain'); print_r($out); } else { ?> <html> <head> <title>Скрипт генерации ключевых слов</title> </head> <body> <form action="?mod=getkw" method="post"> <textarea style="width: 50%; height: 300px;" name="body"></textarea> <br> <input type="submit" value="Сгенерировать"> </form> </body> </html> <?php } ?> Насколько криво такое вот решение проблемы? Также осталась нерешенная проблема удаления слов-паразитов, т.е. союзов, местоимений и т.д. - как оно реализовать? Также буду рад различным ссылкам по этой теме, а лучше на конкретные реализации!