Алгоритм немецкого языка

В октябре 2019 года на немецкоязычном ИТ-портале был опубликован отчет о 70-летней истории обработки текстов heise.de . На мой взгляд, очень интересно. Удивительно, как все начиналось и какие возможности у нас есть сегодня. В повседневной работе я часто использую Microsoft Word. Кроме того, я поклонник простого текста ASCII и Markdown.

Видео как быстро выучить язык

Благодаря статье я вспомнил кое-что из своей работы в свободное время по интеллектуальному анализу текста. В то время я работал над реализацией алгоритма Porter-Stemmer для немецкого языка в ABAP. Кроме того, я также внедрил очень простой алгоритм расстановки переносов для автоматического разделения немецких слов.

Такие алгоритмы расстановки переносов широко использовались. Поскольку в прошлом было мало свободного места на диске. Поскольку в некоторых случаях они не дают хороших результатов, насколько я знаю. Сегодня используются комплексные словари со всеми комбинациями.

Поскольку алгоритм не очень сложный, вот выдержка. Полный исходный код можно найти на GitHub (проверьте abapGit). В качестве подсказки: некоторые инструкции типа “DATA (current_character)” в сочетании с инструкцией DO не рекомендуются руководством по стилю Clean ABAP.

[..] DATA(word_length) = strlen( word_to_separate ). DATA(current_position) = word_length - 1. DO. IF current_position 

Некоторые тесты быстро показывают слабые места в буквосочетаниях “sch”. “ss” (“β”) или “ck”.

Смотри как быстро выучить язык

Таким образом, все еще есть большой потенциал для улучшения 😉

В чем преимущество алгоритма? С одной стороны, это приятное упражнение для студентов и стажеров. Особенно если вы обеспечиваете точность своих результатов с помощью модульных тестов и пытаетесь устранить недостатки. Как показано выше. Потому что тогда у вас есть небольшая закрытая тема. Которую вы можете проработать в течение нескольких часов.

С другой стороны, это еще раз напоминает нам всем о технических возможностях. Которые мы имеем сегодня. В SAPUI5 существует стандартное решение для расстановки переносов для управления текстом. Я еще не работал с ним. Но звучит интересно.

В этом смысле. Счастливого взлома и спасибо за чтение

Майкл

P. S.: Если алгоритм не представляет интереса. Вы также можете взглянуть на этот генератор изображений ASCII.