Как програмно узнать, на какую букву слова падает ударение?

Предположим, что на сайте есть форма, в которую каждый желающий может ввести слово и узнать, на какую букву этого слова падает ударение. Как програмно узнать, куда падает ударение, например, на php?

Возможно нужно создать базу данных с несколькими десятками таблиц, в которых будет содержаться весь орфографический словарь с ударениями. Но как быть с формами слов? В базе будет слово «кошка», а пользователь введёт слово «кошки» и этого слова не будет в базе. Получается, что слово надо как-то разбивать на части, анализировать и т.д. Я что-то даже не знаю в каком направлении капать.

Целесообразно вообще это делать на php?
  • Вопрос задан
  • 897 просмотров
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
1. Целесообразно ли на PHP - да.
2. Нет слова - разбивка на "дерево" триграмм.
3. Ударения - только комплексный анализ: через словарь с базой ударений в разных словоформах (число, падеж, род и т.д.) и через обученную нейронку на "цепочках" слов (смысловая контекстная валидация).
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
@bkosun
Это очень сложная задача, даже если у Вас будет база данных ударений в словах.

Имеешь права не имеешь права
Ответ написан
Комментировать
tsklab
@tsklab
Здесь отвечаю на вопросы.
Программно, а дальше парсить.
Ответ написан
alekciy
@alekciy
Вёбных дел мастер
Но как быть с формами слов?

Хорошо помогает phpMorphy.
Указанный пример про "кошки".
Ответ написан
Комментировать
sotvm
@sotvm
Умный поймёт, а дураку и так всё равно.
только словарь+перебор
других вариантов/алгоритмов нет
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы