Ïîäðîáíîå îïèñàíèå ÿçûêà çàïðîñîâ ïîèñêîâîé ñèñòåìû ßndex
Оглавление.
Операторы языка запросов.
&, && |
- логическое пересечение (И) |
~, ~~ |
- логическое исключение (И НЕ) |
"|" или "," |
- логическое объединение (ИЛИ) |
<-
| - оператор уточнения запроса (первый аргумент уточняется вторым)
|
Здесь для логических (первых трёх) операций "одинарный" оператор
имеет смысл операции в пределах абзаца, "двойной" - в пределах документа.
Смысл операторов поясняется в примерах).
Аргументами операторов являются слова или фразы.
Операторы приведены в порядке убывания приоритета, при этом
приоритет у операторов пересечения и исключения - одинаковый.
Порядок действия операторов можно изменить расстановкой скобок.
Примеры:
компьютер & телефон |
оба слова должны находиться в одном абзаце |
компьютер && телефон |
оба слова должны находиться в одном документе |
компьютер ~ телефон |
второе слово не должно находиться в одном абзаце с первым |
компьютер ~~ телефон |
второе слово не должно находиться в одном документе с первым |
компьютер <- телефон |
из документов, содержащих первое слово, первыми будут выданы документы,
содержащие второе слово |
Задание области действия логических операторов.
Описание синтаксиса и примеры.
Модификация области действия логических операторов имеет смысл для операторов
&, &&, ~, ~~.
Для оператора | модификация области действия синтаксически допустима
(т.е. сообщение о синтаксической ошибке не выдаётся и поиск происходит),
но на результат поиска не влияет.
Область действия операторов определяется в виде
расстояния между словами или абзацами
Синтаксис задания области действия логических операторов:
/(число1 число2),
при этом число1 должно быть не больше, чем число2.
Сокращённая форма:
/число - равнозначно /(-число +число)
/+число - равнозначно /(0 число)
/-число - равнозначно /(-число 0)
Если задана область действия оператора, но не задан сам оператор,
то применяется оператор & (пересечение внутри абзаца), т. е.
он /2 идёт - эквивалентно запросу он &/2 идёт
Смысл этих конструкций поясним на примерах:
он /(-2 4) идёт |
"идёт" должно находиться от "он" в интервале расстояний
от 2 слов слева до 4 слов справа |
он &&/1 идёт |
"идёт" должно находиться в томе же абзаце, что и
"он", либо в соседнем |
он /+1 идёт |
"идёт" должно следовать за "он" |
он /2 идёт |
"идёт" должно находиться на расстоянии 2 слова от "он"
вне зависимости от порядка следования |
он ~/(-4 +8) идёт |
"идёт" не должно находиться рядом со словом "он", причём "рядом"
здесь означает "в интервале расстояний от 4 слов слева до 8 слов справа" |
Расстояние между словами.
Если слова в тексте перенумеровать по порядку их следования,
то расстояние между словами a и b - это разница между номерами
слов a и b. Таким образом, расстояние между соседними словами равно 1
(а не 0).
При задании расстояния порядок следования слов существенен.
Высказывания "на расстоянии в -2 слова" и "на расстоянии в 2 слова cлева"
мы считаем равнозначными.
Высказывания "на расстоянии в +2 слова" и "на расстоянии в 2 слова справа"
также равнозначны.
Расстояние между абзацами
Определяется аналогично расстоянию между словами
(если заменить термин "слово" на термин "абзац").
Поиск в зонах
Сейчас работает поиск в двух зонах - заголовках (имя зоны: Title) и ссылках (имя зоны: A).
Синтаксис:
$имя_зоны выражение_поиска_в_зоне
Здесь выражением_поиска_в_зоне может быть:
- поисковое выражение в скобках,
- слово или фраза
- выражение поиска в зоне.
Примеры:
$Title КомпТек |
- ищем в заголовках документов это слово |
$Title (КомпТек | Dialogic) |
- ищем в заголовках документов одно из слов |
$A (читайте /+1 на /+1 сайте) |
- ищем в ссылках выражение, взятое в скобки |
$Title $A КомпТек |
- ищем в ссылках, находящихся в заголовках документов |
Фразы
Понятие фразы
Фразой называется последовательность слов, разделённых пробелами.
Скобки и знаки операций
являются разделителями фраз.
Например, в запросе
злая собака ~ московская сторожевая есть две фразы:
"злая собака" и "московская сторожевая".
Они разделены знаком операции исключения ~.
Этот запрос интерпретируется следующим образом:
- происходит поиск фразы "злая собака"
- происходит поиск фразы "московская сторожевая"
- результат второго поиска вычитается из первого.
Поиск фразы.
В текущей версии Яндекса фраза обрабатывается следующим образом:
между словами фразы вставляется оператор пересечения внутри абзаца
с расстоянием (-256 258). Таким образом, запрос
скромное обаяние буржуазии
равнозначен запросу
скромное /(-256 258) обаяние /(-256 258) буржуазии
При таком запросе наиболее релевантными будут те документы, в которых
первое слово следует непосредственно за вторым, второе - непосредственно
за третьим (если, конечно, такие документы есть). Еслие же найденном
документе есть, например, фраза, в которой эти слова тоже находятся рядом,
но в другом порядке, то его релевантность будет ниже.
Задание веса слова или выражения.
Применяется для того, чтобы увеличить релевантность
документов, cодержащих "взвешенное" выражение.
Синтаксис:
слово:число
или
(поисковое_выражение):число
Примеры:
поисковые механизмы:5
поисковые (механизмы|машины|аппараты):5
Запрос
поисковые (механизмы|машины|аппараты):5
равнозначен запросу
поисковые (механизмы:5|машины:5|аппараты:5)
Описание алгоритма упорядочивания результатов поиска.
При поиске для каждого найденного документа Яндекс вычисляет величину
релевантности (соответствия) содержания этого документа поисковому запросу.
Список найденных документов перед выдачей пользователю сортируется по этой
величине в порядке убывания.
Релевантность документа зависит от следующих факторов:
- Частотные характеристики искомых слов;
- Вес слова или выражения, заданный пользователем;
- Факт расположения искомых слов в заголовке документа;
- Операторы, применяемые в запросе, их области действия;
- Близость искомых слов в тексте документа друг к другу.
|