Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Guide [7.17] ›Анализ текста ›Понятия анализа текста

Структура анализатора

Анализатор — будь то встроенный или пользовательский — представляет собой пакет, содержащий три строительных блока более низкого уровня: фильтры символов, разделители токенов и фильтры токенов.

Встроенные анализаторы предварительно упаковывают эти строительные блоки в анализаторы, подходящие для разных языков и типов текста. Elasticsearch также предоставляет отдельные строительные блоки, чтобы их можно было объединить для определения новых custom анализаторов.

Фильтры символов

Фильтр символов получает исходный текст в виде потока символов и может преобразовывать поток, добавляя, удаляя или изменяя символы. Например, фильтр символов можно использовать для преобразования индо-арабских цифр (٠‎١٢٣٤٥٦٧٨‎٩‎) в их арабско-латинские эквиваленты (0123456789) или для удаления HTML-элементов, таких как <b> из потока.

Анализатор может иметь ноль или более фильтров символов, которые применяются в порядке следования.

Разделитель токенов

Разделитель токенов получает поток символов, разбивает его на отдельные токены (обычно отдельные слова) и выводит поток токенов. Например, whitespace разделитель токенов разбивает текст на токены всякий раз, когда встречается пробел. Он преобразует текст "Quick brown fox!" в термины [Quick, brown, fox!].

Разделитель токенов также отвечает за запись порядка или положения каждого термина и начальных и конечных смещений символов исходного слова, которое представляет этот термин.

Анализатор должен иметь ровно один разделитель токенов.

Фильтры токенов

Фильтр токенов получает поток токенов и может добавлять, удалять или изменять токены. Например, lowercase фильтр токенов преобразует все токены в нижний регистр, stop фильтр токенов удаляет распространенные слова (стоп-слова), такие как the из потока токенов, а synonym фильтр токенов вводит синонимы в поток токенов.

Фильтры токенов не должны изменять положение или смещения символов каждого токена.

Анализатор может иметь ноль или более фильтров токенов, которые применяются в порядке следования.

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/analyzer-anatomy.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API