Страницы

Поиск по вопросам

суббота, 9 марта 2019 г.

Как проверять слова Русского языка?

Для игры типа «Эрудита» надо проверять, есть ли составленное игроком слово в словаре, и соответствует ли оно требованиям: именительный падеж, единственное число. Наверное, достаточно раздобыть текстовый файл со словами через разделитель, и в нём искать. Кстати, может, есть некий формат, более удобный для поиска? Дерево, сортировка, всё такое? Основной вопрос — как расширить набор правил? Разрешить, например, все падежи, множественное число, глаголы во всех временах.


Ответ

На мой взгляд, какого-то лёгкого или средней сложности способа вы врядли найдёте. Разве что, пропишите все возможные варианты в БД или файле. С падежами - проще. Можно было бы прописать корни слов и отдельно возможные суфиксы, окончания слов и т.д. Но и тут засада. Возьмём для примера слова "хэшкод" и "конь". Как проверить правильность написанных слов, если в дательном падеже первое слово будет "хэшкодУ", а второе - "конЮ"? Вопрос риторический. С глаголами и их временами ещё печальней. Берём: "ехать" и "идти". В неопределенном времени (1-е лицо) получаем "езжу" и "хожу". Тут даже логики не просматривается.
Вывод: "Велик и могуч русский язык, но под PHP не заточен".
P.S. Кстати, тут неподалеку есть еще один форум (Русский язык). Возможно, что там могут кое-что дельное подсказать.

Комментариев нет:

Отправить комментарий