Hola Txusmt.
Yo he deducido los que tenía que utilizar para la práctica, probando cosas y viendo código de formularios reales. A ver si me explico bien:
- los caracteres usables van encerrados entre [] sin separarlos de ninguna manera por ejemplo si quieres permitir numeros, símbolo de euro y almohadilla, lo puedes escribir así [0-9€#] o [0-9 € #]
- la cantidad de carácteres a usar se especifica por un par mínimo-máximo, encerrado entre {}. si quieres de 3 a 8 caracteres debes escribir {3,8}
- si no queremos especificar una cantidad máxima, dejaremos libre la parte del máximo. si quiere mas de 3 caracteres, sin límite debes escribir {3,}
Un ejemplo, quieres permitir solo letras, tanto mayúsculas como minúsculas, números, euro, almohadilla y guion bajo; y quieres que sea de almenos 8 caracteres, que podria ser el caso de un password.
el atributo seria: pattern="[a-z A-Z 0-9 € # _] {8,}"
Espero que esto te haya ayudado. De todos modos buscaré unas reglas por ahí, por si hay más cosas de las que he ido deduciendo.
Saludos