ho risolto con strstr e str_replace nel file php invece che in .htaccess, nell'intento di far rimanere univoco l'url.

if (strstr($url, '!')){$nuovo_link = str_replace("'", "", $url); e poi il 301}

soluzione forse troppo semplificata, ma con htaccess non sono riuscito.