нужно пройтись по тексту и позаменять все слова на эти же слова с определенными ссылками. Сложность заключается в том, что мы знаем только именительный падеж искомого слова, а заменять нужно все. яблоко -> <a href="/fructs/apple">{то, что нашли}</a> cобака -> <a href="/animals/dog">{то, что нашли}</a> У собаки под яблоней было три яблока. У <a href="/animals/dog">собаки</a> под яблоней было три <a href="/fructs/apple">яблока</a>. Как бы это реализовать?
у Яндекса есть сервис склонения имен. Но не, сервисы в печь. Готовые решения все платные или однобокие (только для месяцев, чисел). Короче шут с ним, заказчик сам составит словарик
Он скажет, что б я интегрировал с Яндексом, а я ленивый. Ладно, сделаю по-нормальному http://export.yandex.ru/inflect.xml?nam ... 0%B2%D0%BE
Koc Ну без словарика по-любому никак, склонять существительное по падежам можно только в случае, если знаешь род слова и его окончание. Если второе можно хоть как-то выяснить программно, например, определение последней гласной и список декларированых согласных, то род слова программно определить никак. Есть одно универсальное правило для существительного третьего лица единственного числа - женский род, оканчивающийся на шипящую согласную: мышь, печь. Тут можно составить правило, в остальных случаях будет невозможно абсолютно точно определить слово без словаря.
вот так устроит? =) делов было на 2 часа... http://440hz.ru/trash/ispell/?Q=%E6%EE%EF%E5 http://440hz.ru/trash/ispell/?Q=%E1%E5%E6%E0%F2%FC http://440hz.ru/trash/ispell/?Q=%EB%E5%ED%E8%E2%FB%E9
440Hz йоу, а как ты так? я тоже так хочу. Это случайно не http://company.yandex.ru/technology/mystem/
ручная сборка. PHP: <?php header('Content-type: text/html; charset=windows-1251'); mysql_connect('localhost','ispell','spellme'); mysql_select_db('ispell'); mysql_query('SET NAMES CP1251'); setlocale(LC_ALL,'ru_RU.CP1251'); $words = array(); $word = ''; if( !empty($_GET['Q']) ) { $Q = $_GET['Q']; $Q = preg_replace('/[^а-я]/i','',$Q); $sql = "SELECT word_id FROM spell WHERE word_form = '".mysql_escape_string($Q)."' LIMIT 1"; $result = mysql_query($sql); if($result AND mysql_num_rows($result)) { $find = mysql_fetch_object($result); $sql = "SELECT word_form FROM spell WHERE word_id = {$find->word_id}"; $result = mysql_query($sql); while( $row = mysql_fetch_object($result) ) { $words[] = $row->word_form; } $sql = "SELECT word_word FROM words WHERE word_id = {$find->word_id} LIMIT 1"; $result = mysql_query($sql); $row = mysql_fetch_object($result); $form = $row->word_word; } else { $words[] = 'нинашли'; } } else { $Q = ''; } ?> <form> <input type=text name=Q value="<?php echo $Q;?>"> <input type=submit value="Найти"> </form> <script> document.forms[0].Q.focus(); </script> <?php if( count( $words ) ) { while( list(,$word) = each($words) ) { if($form == $word) print("<u>$word</u><br />"); elseif ( $word == $Q) print("<b>$word</b><br />"); else print("$word<br />"); } } ?> http://440hz.ru/trash/ispell/ispell.sql.gz не
440Hz ааа. а я уж думал это не твоя база и где-то сервис есть крутой ))) а тут есть куча вкусных штук