|
|
|
| Здравствуйте.
Есть следующая таблица:
id | name
1 | Яблоко
2 | Апельсин
3 | Мандарин
4 | Лук
Есть вот такая строка:
$name = 'Лукашенко любит апельсины';
С таблицы надо достатть вторую строку(Апельсин), потому что ее содержание упоминается в строке(апельсины). Но не надо доставать лук, потому что это часть другого слова(Лукашенко).
Для этого я решил использовать регулярное выражение в запросе. Но как именно его записать что бы строки в таблице пытались подставить под определенную строку, а не наоборот? Или есть решения лучше чем регулярное выражение в запросе?
p.s.
В написании самого регулярного выражения проблем нет. | |
|
|
|
|
|
|
|
для: forma
(20.06.2011 в 19:56)
| | На случай, что получилось не понятно, задам по другому вопрос.
Обычно я так понимаю, регулярки в запросах используются так:
`name` RLIKE '/^[0-9]+$/'
А мне надо наоборот, вот так:
'abc' RLIKE '/^`name`+$/' (регулярка только ради примера)
То есть текст к которому пытаются подставить регулрку всегда тот же, а сама регулярка меняется.
Но у меня так не получается, пишет синтаксическая ошибка. | |
|
|
|
|
|
|
|
для: forma
(20.06.2011 в 23:11)
| | Нуб и опозорился, вот как надо:
'abc' RLIKE CONCAT( '/^',`name`,'+$/' ) | |
|
|
|
|
|
|
|
для: forma
(20.06.2011 в 23:29)
| | А в таких регулярках нельзя использовать модификаторы? А как то в запросе вообще можно использовать модификаторы рег. выражений? | |
|
|
|