Where (prm, prm, prmN, POINTER)
Описание: Выбрать из источника данных все объекты удовлетворяющие критерию
Назначение: Получение данных из источника
Ключевой объект: Указатель на набор файлов или текстовый объект
Параметры: Текстовый, Маркер метода, Набор текстовых указателей, Набор первичных параметров.
Маркеры:
NOSELF – Если с лева или права находится объект не из указанной группы.
EDGE – Если с лева или права находится граница файла.
LEFT – Проверить на соответствие условию с данные с лева от объекта
RIGHT – Проверить на соответствие условию с данные с лева от объекта
FUZZY – Использовать нечёткую выборку (используется если параметр строка)
HEX – Текстовое поле содержит символы в HEX (используется если параметр строка)
NOCASE – При поиске условия не учитывать регистр критерия (используется если параметр строка)
Возвращаемое значение: Массив основных текстовых указателей - [DATA LIST]
Регулярные выражения: Поддерживаются
Механизм работы: символ.Where(NOSELF, LEFT) - последовательно перебираются все элементы ключевого объекта, подобъект считается соответствующим условию если с лева от него находится объект не входящий в группу – «символ».
Применение:
1. Сгруппировать все предложения от заголовка до следующего заголовка или границы файла
GROUP предложение.Where(заголовок, LEFT) FOR предложение.Where(заголовок, EDGE, RIGHT) AS абзац
2. Выбрать все предложения содержащие строку "Данные"
GROUP предложение.Where("Данные", FUZZY) AS предложения_содержащие_строку_данные