per i vantaggi di usare MATCH/AGAINST e BOOLEAN MODE anzichè LIKE è spiegato in questa guida http://www.codicefacile.it/tutorials...text/category/

per quanto riguarda la regexp ho fatto la modifica come mi hai detto:

codice:
if (preg_match("/^[0-9a-zA-Z\-\.àèìòùÀÈÌÒÙ& \'\/"]+$/", $searchStr))
ma mi da errore Parse error: syntax error, unexpected ']'

scusa ma io di regexp purtroppo so ben poco...