Antes que todo, les deseo un muy feliz año nuevo, que obviamente sea mucho, pero mucho mejor que el que nos esta dejando, y sobre todo lo puedan pasar junto a sus seres queridos.
Y bueno, volviendo a los que nos reune, sin lugar a dudas una cosa que nos ha tocado hacer es validar un rut, si bien existen varios Javascript que nos ayudan en esta tarea, en algunas ocaciones solo necesitamos validar la sintaxis, es decir, que tenga numeros y la letra K, o tambien podemos necesitar validar que no ingresen caracteres extraños en nuestros input o textarea.
Una manera muy facil de hacerlo es con los inputmask de JQuery, no es mas que un tag que ocupa expresiones regulares, las cuales hacen que las cosas sean mucho mas simples con una sola linea, por ejemplo, si queremos validar la sintaxis de un Rut seria:
$("#rut").inputmask('Regex', {regex: "[0-9-.Kk]{10}"});
Donde lo mas relevante es:
[0-9-.Kk] Expresion regular que solo permite numeros, un guion y la letra K
{10} Indica el largo maximo que desea permitir, en este caso 10 caracteres
Ahora si necesitamos validar un input de escritura simple, podria ser:
$("#txt").inputmask('Regex', {regex: "[a-zA-ZñÑá-úÁ-Úä-üÄ-Ü '-]{10}"});
Pero claro ! nos ha faltado ingresar numeros, pues no hay problema, los agregamos
$("#txt").inputmask('Regex', {regex: "[a-zA-ZñÑá-úÁ-Úä-üÄ-Ü0-9 '-]{10}"});
Mmmmm… ¿sigue sin convencer? pues claro, si era una escritura simple, algo un poco mas complejo podria ser este:
$("#txt").inputmask('Regex', {regex: "[a-zA-ZñÑá-úÁ-Úä-üÄ-Ü0-9 .,;-\_¿?¡!()<>$%\"#/]{10}"});
Si te fijas en los primeros permitiamos ingresar una cremilla o comilla simple (‘) y en nuestro ultimo solo la comilla doble («) esto es porque no deberiamos permitir ingresar ‘ junto con %, ya que con este simple junte nos pueden intentar inyectar codigo, ahora si tu aplicacion ya la validaste para eso, pues agregalo, que no pasa nada 😀
Eso seria todo, simple y rapido, claramente puedes ocupar las expresiones regulares que desees eso lo dejo a tu imaginacion 😉