Se volessi che
codice:
$string= preg_replace"/[\W_ç]/", " ", $string);
lasciasse passare il simbolo di percentuale ??


Edit:
scusate mi aririspondo da solo, spero solo possa essere utile a qualcuno,
però leva anche le lettere accentate

codice:
$string = preg_replace("#([^a-z0-9%])#i", " ", $string);