суббота, 9 февраля 2013 г.

поиск в массиве по регулярке php

© 2013 | box[α]mysqlru.com

Ваш комментарий...

а ещёжелательно сравнивать не слова, а основы: "использование РНР" = "использования РНР". А ещё лучше -- паттерны "испОльзование" похоже на "исПЛьзование" на столько-то процентов. И предоставить возможность выбора варианта пользователю.

надо находить все данные где есть каждое слово , оставлять только те где слов больше , и сравнивать коэфицент поисковых слов от общего количества слов, так как 4 слова из 5 это большее совпадение чем 5 слов из 100. + сравнивать нужно в одно регистре , либ в нижнем либ в врехнем , иначе заглавная буква всё испортит

я недавно работал над похожей задачей , во первых определять ключевое слово по длине это глупо согласись -

http://imageshost . ru/photo/99753/id1011034.html

Дополнено (1). убираем пробелы

Хочу услышать ваше мнение по этому алгоритму.

Мне кажется так будет быстрей работать нежели писать одну тяжелую регулярку, которая будет искать все слова независимо от их последовательности, или быстрей чем получать результаты по каждому отдельно взятому слову, потом релевантность определять по пересечению массивов результатов.

4) В цикле while смотрим, если искомых слов меньше либо равно 2, то сразу заносим найденный текст в массив $arrSearch. Если искомых слов больше, то ищем остальные слова (исключая уже 2 найденных) в этом тексте циклом for, и если все из них найдены, то также заносим текст в массив $arrSearch.

3) Ищем 2 самых больших слова (чтобы осуществить первоначальный поиск по ним в БД).

2) Создаем массив слов для поиска, удаляя все лишние пробелы.

1) Проверяем чтобы был введен текст длинной больше 2 символов.

Задача следующая: сделать поиск, который бы искал не зависимо от последовательности введенных слов и их кол-ва.

PHP MySQL. Оцените алгоритм поиска.

PHP MySQL. Оцените алгоритм поиска. | Mysql

Комментариев нет:

Отправить комментарий