Ce qui suit est une expression régulière qui contient essentiellement tous les caractères spéciaux, faites attention aux caractères qui doivent être échappés
^(?=.*[az])(?=.*[AZ])(?=.*[0-9])(?=.*[~!@&%#$^*()+_{ } :<> ?|\"`-=[\\]\;',./ ])[a-zA-Z0-9~!@&%#$^*()+_{} :<> ? |\"`-=[\\]\;',./ ]{10,20}$