risolto il problema con questa controllo che non ci siano caratteri non ammessi
var pattern = /^[0-9a-z_-]+$/
e poi l'estensione la faccio selezionare con i checkbox