Итак, я работал с RLIKE, чтобы вытащить некоторые данные в новое приложение и в основном пользоваться им.Нужно использовать выражение MySQL RLIKE для исключения определенных строк, заканчивающихся конкретными символами.
На сегодняшний день я использую запросы RLIKE для возврата трех типов результатов (файлов, каталогов и всего прочего).
Запросы (и примеры результатов) следуют:
**All**:
SELECT * FROM public WHERE obj_owner_id='test' AND obj_namespace
RLIKE '^user/test/public/[-0-9a-z_./]+$' ORDER BY obj_namespace
user/test/public/a-test/.comment
user/test/public/a-test/.delete
user/test/public/directory/
user/test/public/directory/image.jpg
user/test/public/index
user/test/public/site-rip
user/test/public/site-rip2
user/test/public/test-a
user/test/public/widget-test
**Files**:
SELECT * FROM public WHERE obj_owner_id='test' AND obj_namespace
RLIKE '^user/test/public/[-0-9a-z_./]+[-0-9a-z_.]+$' ORDER BY obj_namespace
user/test/public/a-test/.comment
user/test/public/a-test/.delete
user/test/public/directory/image.jpg
user/test/public/index
user/test/public/site-rip
user/test/public/site-rip2
user/test/public/test-a
user/test/public/widget-test
**Directories**:
SELECT * FROM public WHERE obj_owner_id='test' AND obj_namespace
RLIKE '^user/test/public/[-0-9a-z_./]+/$' ORDER BY obj_namespace
user/test/public/directory/
Это хорошо работает для вышеуказанных 3 основных сценариев, но при определенных ситуациях, я буду в том числе специальные «суффиксы» Я хотел бы быть исключены из результаты запросов (без необходимости прибегать к функциям PHP для этого).
Хорошим примером такой строки будет:
user/test/public/a-test/.delete
Эти данные (есть несколько строк, то просто obj_namespace) считается удален и в Файлы и всех запросов типа я как это должно быть опущено в выражении, если это возможно.
То же самое относится и к /.comments и все такие мета-данные всегда будут находиться в том же формате:
/.[sometext]
Я надеялся использовать эту функцию широко на протяжении всей моей приложения, так что я надеюсь, что там может быть очень простым ответом. (кресты пальцы)
В любом случае, спасибо как всегда за любые ответы и отзывы.
Что StackOverflow нужно это «а им пиво» кнопку для микро пожертвования через PayPal или этажерки. Спасибо, Мартин. – zmg