Задать вопрос
@betrachter

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

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

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

Похожие вопросы