2010-12-05 15 views
5

Intenté esta expresión /\b(word\w*)\b/i para comparar un word con la lista de otras palabras para encontrar los duplicados. Usé preg_math_all() y funcionó bien. Quería hacer lo mismo, pero esta vez compruebe las palabras recuperadas de la base de datos mysql. Esto es lo que escribícómo escribir expresiones regulares en consultas de selección de MySQL?

SELECT * FROM table WHERE word = /\b(word\w*)\b/i 

this didnt worked.

Respuesta

7

Su consulta debe verse como:

SELECT * FROM table WHERE column REGEXP '/\b(word\w*)\b/i' 
4

MySQL regex syntax es una diferente de PHP, usted no necesita los delimitadores en el inicio y el final.

SELECT * FROM table WHERE word REGEXP '\b(word\w*)\b' 

no puede utilizar la bandera i para el caso de falta de sensibilidad del mismo modo que en PHP, como en MySQL si la expresión regular entre mayúsculas y minúsculas o no depende de si la intercalación de columna es un caso delicado o no.

Cuestiones relacionadas