La expresión
per se está bien, sin embargo la sintaxis está incompleta para PHP-PCRE.
Aquí están los separadores, pon atención a la documentación, por favor.
Lo que no entiendo es, siendo el manual tan claro y en español no entiendas a lo que se refiere, y peor si tienes buenos ejemplos.
Cita: /foo bar/
#^[^0-9]$#
+php+
%[a-zA-Z0-9_-]%
¿Fácil verdad?