AFAIK、MySQL正規表現をエスケープするネイティブな方法はありません。 PHPでpreg_quote(http://www.php.net/manual/en/function.preg-quote.php)を使用してこれを行うことができます。これはおそらくあなたに代わって機能しますが、明らかにその目的のために設計されたものではありません。
私があなたの状況にあった場合の私の好ましい方法は、PHPで正規表現のホワイトリストを作成し、それを危険な文字列に適用することです。
$safeString = preg_replace('/[^\w]/','',$dangerousString);
これにより、単語以外の文字(つまり、A-Za-z0-9_以外のもの)が文字列から削除されます。
注意:他の回答では、正規表現の特殊文字を削除/エスケープすることはできないと思います。これはあなたの要件であると私は信じています。