logo
Информатика_методичка

Сложный поиск в Интернет

Осуществлять поиск по отдельным словам – работа весьма трудоемкая. Именно для решения этой проблемы на большинстве серверов введен так называемый «сложный поиск». Часто для его реализации применяются «расширенные» формы запроса. Но в большинстве случаев, выбирая «расширенный поиск», пользователь получает возможность создать «сложный запрос», задействовав при этом специальные команды-разделители – операторы Буля. Получившийся в результате запрос будет очень похож на математическую формулу – часто в нем можно использовать даже скобки!

Конечно, операторы на разных серверах употребляются разные. В некоторых случаях можно использовать обычные математические символы – плюс и минус. Но чаще всего в «сложном поиске» задействуются следующие операторы:

AND – «и». Этот оператор подразумевает, что в искомом документе должны содержаться все слова, которые оператор разделяет в запросе. При этом совершенно безразлично, стоят ли они рядом или находятся в разных частях документа.

Пример: (компьютер AND технология) AND программа

Эквивалент: знак + или &

OR – «или». В документе должно находиться хотя бы одно слово из тех, которые разделяет этот оператор.

Пример: (компьютер AND технология) OR программа

Эквивалент: знак │

Пример: (компьютер + технология) │ программа

NOT – «без». Подразумевает, что выбраны будут все документы, содержащие слово перед этим оператором, но исключая слова после него.

Пример: (компьютер AND технология) NOT программа

Эквивалент: знак – или ~

Пример: (компьютер + технология) – программа

NEAR – «близко». Подразумевает, что слова, разделенные этим оператором, должны находиться максимально близко друг от друга. Например, запрос «компьютерная NEAR пресса» позволит вам получить список страниц, на которых встречается именно СЛОВОСОЧЕТАНИЕ «компьютерная пресса».

Помимо операторов, при формировании запроса часто используются и специальные символы, позволяющие уточнить запрос либо, наоборот, предоставить поисковику большую свободу.

Дело в том, что для любого слова, как нам известно, существуют множество дополнительных форм – падежей, склонений и т.д. Особенно славится этим русский язык с его непостижимым для иностранцев форменным изобилием.

Приятно, конечно, что хотя бы в этом мы опережаем Запад. Однако поиск это здорово усложняет. Например, задав в качестве поискового алгоритма слово «журналистика», мы тем самым пропускаем все документы, содержащие «журналистику», «журналистикой» или «журналистский».

Эта проблема решается, если мы заменим часть слова символом *: журналист *

Другие специальные символы:

@ - поиск слов со всеми словоформами (@журналистика)

? – замена любого символа (журналистик?)

На русскоязычных серверах существует свой собственный язык запросов. Так, в системе Yandex вместо оператора AND используется символ &, вместо OR – символ │, а вместо NOT – символ ~. При этом условия, ограниченные этими операторами, действуют только в пределах абзаца. Если же вы хотите, чтобы заданные вами условия относились ко всему тексту документа, а не к отдельной фразе, операторы нужно «удвоить» - например, вместо & поставить &&. Так, по запросу «александр && пушкин» сервер выдаст все документы, в которых встречаются имя и фамилия поэта. Пусть даже имя будет в начале страницы, фамилия – далеко в конце…

Другая поисковая система – Rambler – наряду с «символьными» операторами позволяет использовать и стандартные AND, OR, NOT. Кроме того, допустимо использование специальных символов.