Недостатки указанного способа очевидны при использовании любых языков, в которых слова имеют словоформы, то есть изменяются по числам, родам, падежам, временам и др. Пользователь, начиная поиск, вынужден либо вспоминать, как точно выглядела искомая лексическая единица, либо добросовестно склонять и спрягать слова, чтобы получить полную парадигму.
Частичное решение проблемы – применение шаблонов, например, символа * (астериск) в конце слова. Такой шаблон неплохо подходит для английского языка, где большинство словоформ образуется за счет добавления окончаний – s, – ed и – ing; впрочем, но эта уловка полностью не спасает от «мусора» в результате поиска. С русским языком все обстоит гораздо сложнее. Найти с помощью шаблона многие слова невозможно в принципе, а именно:
• слова, у которых в разных формах меняется основа: идти – шел, плохо – хуже, он – его, человек – люди, ребенок – дети;
• слова с большим количеством словоформ. Привести список всех словоформ русского глагола (с причастиями и деепричастиями – до 250 различных форм) человеку, у которого нет лингвистического образования, очень трудно. Понять, все ли словоформы из этого списка охватываются шаблоном * – еще труднее;
• слова с беглыми гласными и чередованиями (искать – ищу, окно – окон, расти – рос);
• короткие слова (из трех-четырех букв): дом, хор и т. п. Во всех языках, в том числе и в русском, существует общая закономерность: чем короче слово, тем чаще оно используется. Применение шаблона * для поиска такой лексики приводит к большому количеству ненужных ссылок в списке найденных документов.
Существует два противоположных подхода к реализации поиска. Первый – «демократический», при котором поиск должен быть настолько прост, чтобы любой неподготовленный человек мог, не испытывая затруднений, сформулировать вопрос и вскоре получить на него приемлемый ответ. Второй – «элитарный», при котором поиск является тонким инструментом, требующим квалифицированного обращения. Оба подхода справедливы, чем и обусловлено наличие у всех крупных поисковых машин в Internet двух поисковых страниц – для обычного и расширенного поиска.
Полнотекстовый поиск
Когда говорят о полнотекстовом поиске, имеют в виду поиск по всем текстовым полям документа. Под текстом подразумевается набор слов (выделенная по некоторым правилам последовательность букв), чисел и меток (комбинации букв и цифр или букв разных алфавитов). Текстовый документ, как правило, имеет внутреннюю структуру – деление на параграфы, отступ для заголовка, подписи, таблицы. Текстовые редакторы позволяют делать эту структуру достаточно