@betrachter

Поиск в MySQL игнорируя HTML-теги?

Доброго времени суток.
В базе данных MySQL хранятся блоки с HTML-разметкой.
Как правильно осуществлять поиск, игнорируя HTML-теги?
В данный момент поиск реализован посредством LIKE '%string%', однако, если string = 'class', то вываливаются все записи, где в блоках задан class.
  • Вопрос задан
  • 238 просмотров
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега MySQL
Никак, храните в отдельной колонке только текст без html и ищите по ней.
Ответ написан
Комментировать
Wolfnsex
@Wolfnsex Куратор тега HTML
Если не хочешь быть первым - не вставай в очередь!
Вы можете попробовать делать поиск с помощью регулярных выражений, отфильтровывая теги, но сам по себе поиск типа LIKE/ILIKE - не самая быстрая операция для БД, а поиск по регулярке, может значительно усугубить показатели производительности. Вариант, который Вам предложили выше, более оптимальный и в целом похожие решения не редко применяются на практике (когда модифицированный текст, специально подготовленный для поиска по нему, хранится отдельно, в т.ч. в специально отведенной колонке).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы