diría, pero no estoy seguro, que . incluye cualquier caracter, simple o especial. el +, significa uno o más, pero no ninguno.
puedes usar ([a-zA-Z0-9]+) en lugar de (.+), entonces sólo acepta carácteres simples y números. Si quieres también guiones normales, sería ([a-zA-Z0-9-]+)
Te recomiendo:
http://www.addedbytes.com/cheat-shee...e-cheat-sheet/
Saludos.