position

Назначение

Находит документы, содержащие аргументы на указанной позиции в тексте.

Синтаксис

position([номер_позиции],аргумент_1, аргумент_2…​)

Аргументы

Опциональный параметр номер_позиции позволяет указать максимальную позицию (в токенах) аргумента. При отсутствии данного параметра функция ищет аргументы на первой позиции. При расчете позиции не учитываются знаки пунктуации.

Функция также поддерживает следующие опциональные именованные параметры:

  • scope:=sentence/paragraph/text указывает позицию в предложении/параграфе/тексте/таблице (значение по умолчанию - text);

  • mode:=forward/backward указывает позицию от начала/конца выбранного диапазона (значение по умолчанию - forward);

  • min_pos указывает минимальную позицию аргумента;

  • max_pos указывает максимальную позицию аргумента (аналогично первому опциональному аргументу номер_позиции).

Возвращаемое значение

Документы, соответствующие запросу.

Примеры
  • position(1, встреча, scope:=sentence) находит слово «встреча», если оно является первым словом в предложении, например «Встреча прошла в рамках третьего заседания комитета по сотрудничеству».

  • position(1, встреча, scope:=sentence, mode:=backward) = position(встреча, scope:=sentence, mode:=backward, max_pos:=1) находит слово «встреча», если оно является последним словом в предложении, например, «Не надо преувеличивать значимость предстоящей встречи».

  • position(1, встреча, mode:=backward) = position(встреча, mode:=backward, max_pos:=1) находит слово «встреча», если оно является последним словом в документе.

  • position(2, встреча, scope:=sentence, mode:=backward) = position(встреча, scope:=sentence, mode:=backward, max_pos:=2) находит слово «встреча», если его позиция <= 2 от конца предложения, например, «…​сообщается в материалах к встрече лидеров».

  • position(встреча, min_pos:=2, max_pos:=4, scope:=sentence) находит слово «встреча», если его позиция находится в интервале [2;4] от начала предложения, например, «Итоги встречи окажут значимое влияние на динамику сырьевых товаров.», «Российскую сторону на встрече представляет министр энергетики».

  • position(встреча, min_pos:=3, max_pos:=3, scope:=sentence, mode:=backward) находит слово «встреча», если оно находится на третьей позиции от конца предложения, например, «Об итогах этой закрытой для прессы встречи не сообщается».