perchè quella regexp vuole un punto dopo il prefisso internazionale e dopo quello dell'operatore..

prova con: /^((\+|00)?39)?3\d{2}\d{6,7}$/