Поиск аргументов в заданном порядке
Поиск аргументов в заданном порядке в пределах предложения
Для поиска последовательности аргументов в заданном порядке в пределах предложения используется функция phrase().
phrase() принимает в качестве аргументов слова и фразы в любой форме, а также другие функции поиска слов или последовательностей.
Синтаксис
Опциональный именованный параметр расстояние определяет максимальную разницу в позициях между аргументами последовательности. При его отсутствии функция ищет аргументы, стоящие рядом.
Опциональные именованные параметры функции
Параметры allow_punct и allow_space регулируют, соответственно, допустимость знаков препинания и пробелов внутри последовательности. Параметры принимают следующие значения:
Значение |
Пояснение |
yes (значение по умолчанию) |
Пробелы/Знаки пунктуации между аргументами последовательности допускаются. |
no |
Пробелы/Знаки пунктуации между аргументами последовательности не допускается. |
Вместо значения параметра allow_punct:=no может использоваться синтаксис phrase(0,). Запрос phrase(0, аргумент_1, аргумент_2) равнозначен запросу phrase(аргумент_1, аргумент_2, allow_punct:=no) и запросу phrase(1, аргумент_1, аргумент_2, allow_punct:=no).
Примечание
Специальные символы, такие как знак решетки (#), амперсанд (&) или коммерческое at (@), не относятся к знакам препинания и учитываются при расчете расстояния.
Примеры
Параметр match регулирует объем текста, извлекаемого функцией. Параметр принимает следующие значения:
Значение |
Пояснение |
arguments (значение по умолчанию) |
Будут извлечены только аргументы, перечисленные в функции. |
range |
Будет извлечен фрагмент текста от первого до последнего найденного аргумента. |
Примеры
Поиск аргументов в заданном порядке в пределах предложения без учета стоп-слов
Для поиска последовательности аргументов в заданном порядке в пределах предложения без учета стоп-слов используется функция pattern(). Для корректной работы функции словарь стоп-слов должен быть включен в настройках узла.
Стоп-слова — служебные слова, не играющие существенной роли в содержании текста («и», «также», «он», «который», «конечно» и т.д.). Подробнее о работе со стоп-словами можно узнать в разделе «Словари стоп-слов».
pattern() принимает в качестве аргументов слова и фразы в любой форме, а также другие функции поиска слов или последовательностей. Функция во многом идентична функции phrase(), за исключением того, что при подсчете расстояния между аргументами не учитываются стоп-слова.
Синтаксис
Опциональный именованный параметр расстояние определяет максимальную разницу в позициях между аргументами последовательности без учета стоп-слов. При его отсутствии функция ищет аргументы, между которыми не находится полнозначных слов.
Функция поддерживает те же именованные параметры, что и функция phrase().
Примеры
Поиск аргументов в заданном порядке в пределах документа
Для поиска последовательности аргументов в заданном порядке в пределах документа используется функция follow().
follow() принимает в качестве аргументов слова и фразы в любой форме, а также другие функции поиска слов или последовательностей.
Синтаксис
Опциональный именованный параметр расстояние определяет максимальное число предложений, в пределах которого должны находиться аргументы. При его отсутствии функция ищет аргументы в пределах всего документа.
Функция поддерживает те же именованные параметры, что и функция phrase().
Пример
Примечание
Для поиска аргументов в заданном порядке в пределах одного предложения используется функция sfollow(), синонимичная функции sentence(follow()) или follow(1,).