Thankyou pigpen. After all that I found the following oneliner that does it all, it even deals with the back and forward slashes as well.
preg_quote
(PHP 3 >= 3.0.9, PHP 4, PHP 5)
preg_quote -- Quote regular expression characters
Description
string preg_quote ( string str [, string delimiter] )
preg_quote() takes str and puts a backslash in front of every character that is part of the regular expression syntax. This is useful if you have a run-time string that you need to match in some text and the string may contain special regex characters.
The special regular expression characters are: . \ + * ? [ ^ ] $ ( ) { } = ! < > | :
PHP Code:
<?php
$keywords = '$40 for a g3/400';
$keywords = preg_quote($keywords, '/');
echo $keywords; // returns \$40 for a g3\/400
?>
Thankyou for your help anyway.