[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

regex para 'filtrar' nome de arquivo



Oi Pessoal,

   Alguém tem alguma expressão regex (s///) para retirar todos os
   caracteres inválidos em um nome de arquivo e trocar pelos respectivos
   com uma barra invertida antes?

   A intenção é a partir do nome do arquivo fornecido pelo usuario
   executar um comando em shell, portanto eu preciso proteger tanto de
   nomes especiais com espaços e caracteres especiais como
   "123 456 + wq e uir.jpg" quanto de furos de segurança que usuários
   espertinhos queiram pegar, como falar que o arquivo chama-se
   "12312.jpg; rm -rf /"

   Não sei quais são todos os caracteres inválidos e não quero ficar
   testando um a um... se alguém tiver alguma referencia sobre isso
   também serve. Ai eu faço o regex a partir desta referencia.

     Abraços
     Pedro

-- 
  .''`.   Pedro Zorzenon Neto <pzn@terra.com.br>
 : :'  :  Debian GNU/Linux | GNU/Hurd: <http://www.debian.org>
 `. `'`   Debian BR: <http://debian-br.sourceforge.net>
   `-     Be Happy! Be FREE!



Reply to: