Precisa da expressão MySql R para excluir certas cordas que terminam em personagens específicos

StackOverflow https://stackoverflow.com/questions/2496908

  •  21-09-2019
  •  | 
  •  

Pergunta

Então, eu tenho trabalhado com o RLIE para obter alguns dados em um novo aplicativo e me divertindo principalmente.

Até o momento, usei consultas R -Like para retornar 3 tipos de resultados (arquivos, diretórios e tudo).

As consultas (e resultados de exemplo) seguem:

**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/

Isso funciona bem para os três cenários básicos acima, mas, em certas situações, incluirei 'sufixos' especiais, gostaria de ser excluído dos resultados das consultas (sem ter que recorrer a funções PHP para fazê -lo).

Um bom exemplo dessa string seria:

user/test/public/a-test/.delete

Esses dados (existem mais linhas do que apenas obj_namespace) são considerados excluídos e no arquivos e Tudo Digite consultas, gostaria que fosse omitido dentro da expressão, se possível.

O mesmo vale para os /.commentos e todos esses meta -dados sempre estarão no mesmo formato:

/.[sometext]

Eu esperava usar esse recurso extensivamente em todo o meu aplicativo, então espero que haja uma resposta muito simples. (cruza os dedos)

De qualquer forma, obrigado como sempre por todas as respostas e feedback.

Foi útil?

Solução

Parece que você poderia simplesmente adicionar outra condição a cada consulta:

... AND obj_namespace NOT RLIKE '/[.][a-z]+$' ...
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top