php cadenas multi-bytes regex

Tenemos una expresión regular para eliminar los caracteres no alfanuméricos excepto ‘#’, ‘&’ y ‘-‘. Esto es lo que parece:

preg_replace('/[^a-zA-Z0-9#&-*]/', '', strtolower($title)); 

Ahora necesitamos admitir cadenas chinas tradicionales y la función anterior no funcionará. ¿Cómo puedo implementar una funcionalidad similar para el chino tradicional?

Gracias,

Usa tu modificador:

 preg_replace(`/[^a-zA-Z0-9#&-*诶]/u`, '', $string); 

Por cierto, no use strtolower() , ya que romperá su cadena. Use mb_strtolower() :

 mb_strtolower($string, 'UTF-8'); 

¿Has probado mb_ereg_replace () en lugar de preg_replace ()? Eso podría hacer el truco.

http://www.php.net/manual/en/function.mb-ereg-replace.php