Я пытаюсь использовать регулярное выражение, чтобы сопоставить введенную пользователем строку поиска с названием записи в моей базе данных MySQL.
Например, в моей базе данных есть следующие строки в таблице:
id title
1 IM2 - Article 3 Funky Business
2 IM2 - Article 4 There's no Business That's not Show Business
3 IM2 - There's no Business That's not Show Business
4 CO4 - Life's a business
Когда пользователь ищет «IM Article Business», будет выполнен следующий запрос (пробелы заменяются на «(. *)» С использованием str_replace):
SELECT * FROM mytable WHERE title REGEXP 'IM(.*)Article(.*)Business'
Это вернет первые 2 строки.
Теперь я хочу, чтобы он показывал те же результаты, когда пользователь использует те же слова, но в другом порядке, например: «Статья бизнес-чата». Результаты ДОЛЖНЫ содержать все введенные слова, не должен иметь значения только порядок их ввода.
Я никак не мог понять, как это сделать, и надеялся, что регулярные выражения помогут. Я никогда не использовал их раньше, так кто-нибудь знает, как это сделать?
Спасибо
Pascal