Для использования сложных поисковых запросов используется простой в использовании язык запросов, можно построить точный поисковый запросов на поиск архивной информации. Составление запросов будет объяснено ниже.
Для составления поискового запроса его необходимо ввести в строку поиска и нажать на кнопку поиск. Данные согласно вашего поискового запроса будут выведены в таблицу результатов поиска.
Термы
Запрос разделен на термы и операторы. существует два типа терм: Одиночные термы и фразы:
Одиночные термы это слова. Например "test" или "привет".
Фраза это группа слов обрамленная в кавычки например "привет Долли".
Термы могут быть скомпанованы с помощью логических операторов для составления сложных поисковых запросов.
Поля
Во время поиска вы можете указать поля или использовать поля по умолчанию.
Для использования поля введите название поля на англиском языке и завершите ввод поля двоеточием ":" ( subject: ) далее введите терм для поиска. Например нам необходимо найти письмо где в тепе письма будет указано "Питер Пен" и тело письма содержит "пиратский корабль". Данный запрос ( subject:"Питер Пен" AND body:"пиратский корабль" ) должен быть введен в строку поиска. Пожалуйста ознакомьтесь с полями для поиска доступными по умолчанию в Архива.
Логические операторы
Логические операторы позволяют комбинировать термы. Архива поддерживает следующие логические операторы AND, "+", OR, NOT и "-".
OR
OR оператор по умолчанию используется для связи терм. Это означает, что если нет любого другого логического оператора между термами то оператор OR будет использован. OR соединяет термы и ощет документы в которых присутствует хотя бы один из терм. Это эквивалент объединения при использовании списков. Так-же символ || может быть использован вместо оператора OR.
Для поиска документов содержащих либо "яблок"
Для поиска документов содержащих либо "молоко убежало" или "молоко" используйте запрос:
"молоко убежало" или "молоко"
AND
Оператор AND позволяет связывать термы между собой таким образом, что все термы связанные данным оператором должны быть найдены в документе. Это аналог пересечения множеств. Символ && может быть использован вместо слова AND.
Для поиска документов содержащих "молоко убежало" и "вкусные плюшки" используйте запрос:
+
Оператор "+" или обязательный оператор требует чтобы терм находящийся за оператором "+" должен обязательно находится в поле или документе.
Для поиска документов, которые должны содержать "Яблоко" и могут содержать "груша", используется запрос:
+Яблоко груша
NOT
Оператор NOT исключает документы которые содержат термы после оператора NOT. Это эквивалент разницы множеств. Символ ! может быть использован вместо слова NOT.
Для поиска документов, содержащих "яблоко груша", но не "оранжевый грейпфрут", используется запрос:
"яблоко груша" NOT "оранжевый грейпфрут"
-
Оператор "-" или запрещающий оператор исключает документы которые содержат термы после операторы "-".
Для поиска документов, содержащих "яблоко груша", но не "оранжевые плоды винограда", используется запрос:
Группировка
Архива поддерживает использование скобок для группирования условий в подзапросы. Это может быть очень полезно, если вы хотите контролировать булеву логику для запроса.
Для поиска или "яблоко" или "груша" и "грейпфрут" в теме сообщения, используется запрос:
Групировка полей
Архива поддерживает использование скобок для группирования нескольких условий применительно к одному полю.
Для поиска заголовка, содержащего слово "яблоко" и фразу "оранжевой грейпфрут" в теме письма, используется запрос:
subject:(+яблоко +"оранжевой грейпфрут")
Поиск по шаблону
Архива поддерживает поиск по шаблону одной буквы или множества букв в отдельных термах но не фразах.
Для поиска по шаблону одной буквы используйте символ вопросительного знака "?".
Для поиска по шаблону множества букв используйте символ звездочка "*".
Шаблон замены одного символа ищет все термы которые соответсвуют поисковому терму с заменой одного символа. Например для поиска слова "text" или "test" вы можете использовать следующий запрос:
"*" ищет совпадения 0 или большего количества символов. Например, для поиска test, tests или tester, вы можете использовать следующий запрос:
Так же данный символ можно использовать в середине терма.
Запрос регулярных выражений
Архива поддерживает поиск регулярного выражения, совпадающие с шаблоном между косой чертой "/". Синтаксис может измениться в релизах, но в настоящее время поддерживается синтаксис описан в классе RegExp. Например, чтобы найти документы, содержащие "moat" или "boat":
/[mb]oat/
Нечеткий поиск
Нечеткий поиск основан на расстоянии Левенштейна. Для использования нечеткого поиска используйте символ тильда "~". For example to search for a term similar in spelling to "roam" use the fuzzy search:
Поиск вернет термы foam и roams.
Дополнительный опционный параметр позволяет задать количество допустимых изменений. Значение между 0 и 2, например:
roam~1
Значение по умолчанию 2.
Поиск близких
Архива поддерживает поиск слов с определенной дистанцией между ними. Для данного поиска используется знак тильды "~" в конце фразы. Например необходимо найти документы где слово "яблоко" и "груша" находятся на расстоянии 10 слов между собой:
Поиск диапазонов
Диапазонные запросы позволяют найти документы, поле значения которых находится между нижней и верхней границами указанного диапазона. Диапазонные запросы могут включать или не включать верхнюю и нижнюю границы. Сортировка происходит лексикографически.
Бустинг термов
Архива предоставляет результаты согласно релевантности найденных документов запросу. Для бустинга термы используйте символ "^" с фактором буста (число) в конце терма который вы ищете. Чем выше буст фактор тем релевантнее данный терм будет в поиске. Бустинг позволяет управлять релевантностью документов подвергая бусту терм в документе. Например ищем в теме: яблоко груша (subject:яблоко груша)
и хотим чтобы терм "яблоко" был более релевантным, наберем:
Данный запрос сделает документы с темой яблоко более релевантными и они отобразаться выше в результатах поиска. Так же можно бустить фразы как в примере:
По умолчанию буст фактор равен 1. Так-же он должен быть положительным, и может быть меньше 1 (т.е. 0.2).
Экранирование специальных символов
Архива поддерживает экранирование специальных символов, которые могут быть частью запроса. Список специальных символов предоставлен ниже:
Для экранирования данных символов, используйте символ \ перед специальным символом. Например для поиска (1+1):2 используйте запрос: