Использование фигурных скобок ({}) для REGEX в drupal db_query - PullRequest
2 голосов
/ 23 апреля 2011

У меня есть предложение where в моем запросе, например, «WHERE sth REGEXP '[0-9] {5,10}'»

, когда я запускаю этот запрос в phpmyadmin, он возвращает все совпадающие записи, но вDrupal это не имеет никакого результата. Я думаю, это потому, что Drupal принимает все как "{sth}" в качестве таблицы.

как я могу решить эту проблему?

Спасибо

1 Ответ

4 голосов
/ 23 апреля 2011

Ваша теория верна .

Вьющиеся скобки, используемые в качестве квантификатора повторения в регулярных выражениях, удаляются, как и любые другие фигурные скобки. Вместо этого передайте регулярное выражение в качестве аргумента db_query () следующим образом:

db_query('SELECT name from {users} WHERE std RLIKE "%s"', '[0-9]{5,10}');

(я должен был догадаться в остальной части вашего запроса.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...