I have a variable $word and I'd like to match it in my select statement somethig like this: "select * from table where column regex '[0-9]$word'" but this doesnt work, so how can i put a variable in a regular exprssion?
Thank you
I have a variable $word and I'd like to match it in my select statement somethig like this: "select * from table where column regex '[0-9]$word'" but this doesnt work, so how can i put a variable in a regular exprssion?
Thank you
You could try using preg_quote()
to escape your string:
$sql = "select * from table where column regexp '[0-9]" . preg_quote($word) . "'";
There will be some issues because MySQL (assuming this is your DB) may have a completely different idea of which characters are special than PCRE.
You must only put it correctly in SQL query, for example:
mysql_query("SELECT * FROM table WHERE column REGEXP 'prefix_".$word."'");
But you need to remember that the variable data needs to be properly escaped, i think that addslashes() would be enough.