Я разрабатываю очень простой прототип веб-поисковой системы, и теперь я хочу знать, что является лучшим способом анализа пользовательского запроса и определения того, что которые хотят искать. как Google, Bing, Yahoo и т.д. ...Каков наилучший способ проанализировать пользовательский запрос и определить, кто хочет поискать
пример пользовательского сырым запроса что-то вроде этого:
Google+Maps+"South+Africa"+Brazil+OR+Italy+OR+Spain+-Argentina+Netherlands
и я хочу разделить это общий список каждого термина (один), как это:
IEnumerable<KeyValuePair<TermType, string>>
<TermType.All, "Google">
<TermType.All, "Maps">
<TermType.Exact, "South">
<TermType.Exact, "Africa">
<TermType.Any, "Brazil">
<TermType.Any, "Italy">
<TermType.Any, "Spain">
<TermType.None, "Argentina">
<TermType.None, "Netherland">
я не хочу, полный код, я хочу, руководство, решение, советы или ничего, что помогает мне писать лучше для анализа пользовательского запроса сырец.
заранее спасибо
Ваш пример неправильный. – SLaks
hm ..., можете ли вы дать мне правильный вариант? – Sadegh
Правильный синтаксический анализ вашего примера: ((Google И КАРТЫ И «Soutch Africa» И БРАЗИЛИЯ И Нидерланды) И (Италия ИЛИ Испания)) НЕ (Аргентина). И до части ИЛИ можно было читать как ПОСЛЫ, а не буквальное И для разбора Google. –