Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Amigo_zz

regexp

Recommended Posts

ColegasPreciso que o mu sql faça uma busca por acento ou sem eles...Tipo:select * from conteudos where conteudo regexp 'f[oóòõô]rm[aáàâã]ç[aáàâã][oóòõô]'Penso que seria mais ou menos esta a lógica, mas nao esta funcionando.Poderiam dar-me uma ajuda???Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi,

você está precisando fazer consulta independente da acentuação que esteja gravada certo?

Se tem cinqüenta e buscar por cinquenta ele deve retornar o registro?

Se sim, você pode utilizar o SOUNDEX p/ comparar, ex:

SELECT * FROM teste01 WHERE SOUNDEX(NOME) = SOUNDEX('cinquenta')

Com isso você não precisa montar REGEXP p/ várias possibilidades de acentuação.

Se quiser saber mais sobre outras funções de String clique aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi,

você está precisando fazer consulta independente da acentuação que esteja gravada certo?

Se tem cinqüenta e buscar por cinquenta ele deve retornar o registro?

Se sim, você pode utilizar o SOUNDEX p/ comparar, ex:

SELECT * FROM teste01 WHERE SOUNDEX(NOME) = SOUNDEX('cinquenta')

Com isso você não precisa montar REGEXP p/ várias possibilidades de acentuação.

Se quiser saber mais sobre outras funções de String clique aqui.

 

Obrigado.

 

Mas nos campos onde quero fazer a pesquisa, existem textos, como posso conjugar isso com o LIKE ?

 

Tentei isto, mas nao funciona:

SELECT * FROM `conteudos` where soundex(conteudo) like soundex('%produção%')

Compartilhar este post


Link para o post
Compartilhar em outros sites

Neste caso usando o Like realmente não irá funcionar...Bom, pode-se voltar ao uso do REGEXP mesmo.Fiz um teste utilizando o seguinte:

SELECT * FROM teste WHERE conteudo REGEXP 'forma[À-ú]+o'

Tem um registro com o conteúdo: 'teste com formação' e o mesmo foi exibido no resultado.Dá uma olhada neste link: Expressões Regulares.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.