Язык поисковых запросов на сайте Камелот
Для задания дополнительных параметров поиска можно воспользоваться языком поисковых запросов. По умолчанию поиск осуществляется с учетом словоформ и синонимов, слова ищутся в любом порядке, а знаки препинания и регистр символов игнорируются.
Используя синтаксис языка поисковых запросов, можно изменить это поведение. Язык поисковых запросов позволяет использовать логические операции для связывания слов и операторы для управления словоформами.
Логические операторыЛогические операторы позволяют управлять наличием заданных слов в результатах поиска. С помощью логических операторов можно указать, должны ли в полученных результатах присутствовать обязательно все слова, а также указать слова, которые должны отсутствовать.Языком поисковых запросов поддерживаются следующие логические операторы: И — обозначается амперсандом (символ «&»), словом «и» или словом «and». Ставится между словами и означает, что каждое из слов должно присутствовать в результатах поиска.
ИЛИ — обозначается вертикальной палочкой (символ «|»), словом «или» или словом «or». Ставится между словами и означает, что хотя бы одно из слов должно присутствовать в результатах поиска.
НЕ — обозначается минусом (символ «-»). Ставится перед словом и означает, что слово должно отсутствовать в результатах поиска. Для слов, перед которыми стоит оператор НЕ, всегда используется оператор И.
Если в запросе не указан ни один из операторов, то используется оператор ИЛИ.
Если в запросе используется как оператор И, так и оператор ИЛИ, то приоритет имеет оператор ИЛИ. (Мы понимаем, что это противоречит булевой алгебре, но считаем, что так лучше при поиске.)
Для задания более сложной логики слова могут группироваться с помощью скобок, и в этом случае приоритет операторов регулируется скобками.
Если нужно, чтобы в результатах запроса отстутствовало сразу несколько слов, то можно взять их в скобки, а минус поставить перед скобками.
КавычкиДля поиска точной фразы можно использовать кавычки. Допускается использование как двойных, так и одинарных кавычек. Фраза в кавычках разбивается на слова, но для этих слов не определяются ни словоформы, ни синонимы. Слова ищутся в той же форме и в том же порядке, что и в запросе. При этом в результатах поиска между заданными словами не может быть других слов, но могут быть знаки препинания. Также знаки препинания, заданные в запросе, могут не присутствовать в результатах поиска.
Операторы для управления поиском вариантов написания словаЕсть ряд операторов, позволяющих изменить стандартную работу поискового механизма в части определения вариантов написания слова. Эти операторы ставятся перед словом без пробела. Оператор ! указывает, что слово должно быть найдено в той же форме, что и в запросе. При использовании этого оператора не находятся ни словоформы, ни синонимы для слова.
Оператор ^ указывает, что для слова не нужно находить синонимы. Словоформы же участвуют в поиске наравне с исходным словом.
Оператор * указывает, что заданная последовательность символов не обязательно является целым словом. В этом случае не находятся ни синонимы, ни словоформы. При этом в результатах поиска заданное слово может являться частью других слов. Может использоваться не только перед словом, но также после или даже внутри слова. В любом из этих случаев на месте звездочки может идти любое количество других символов.
Перечисленные операторы могут также употребляться перед скобками. Тогда они будут распространяться на каждое слово, стоящее внутри скобок.
Специальные возможностиПоиск номера телефонаЯзык поисковых запросов допускает задание номера телефона в произвольном виде. Номером телефона будет считаться набор цифр, количество которых соответствует количеству цифр в номере телефона. При этом цифры могут быть разделены скобками или дефисами. Начинать номер можно как с цифры 8, так и с '+7', а можно не указывать ни то, ни другое. Код города или код мобильного оператора связи можно указывать, а можно опустить. В любом случае номер телефона будет преобразован в стандартный формат и будет успешно найден.
Сложные запросы
Если что-то в описании языка поисковых запросов показалось вам непонятным, напишите нам. |
