Constructor de Clases de Caracteres para Regex | Crea un [...] de JS y pruébalo
Combina 8 categorías (dígitos, minúsculas, mayúsculas, espacios y más) con caracteres personalizados para construir una clase de caracteres [...] o [^...] compatible con JavaScript. El patrón se ejecuta sobre tu cadena de prueba con la bandera global y resalta cada coincidencia.
💡 Sobre esta herramienta
Una clase de caracteres parece sencilla hasta que un guion mal colocado convierte [a-z] en un rango que no querías, o un ^ al principio invierte toda la clase en una negación. Dentro de los corchetes, los símbolos -, ^, \ y ] tienen un significado especial, y aprender cuándo son literales y cuándo no es justo lo que cuesta retener cuando empiezas con las expresiones regulares.
Esta herramienta reúne las categorías más comunes en casillas y te deja añadir cualquier símbolo en un solo campo, escapando ^, -, \ y ] de forma automática para que la clase siempre sea válida. El patrón generado se ejecuta sobre la cadena de prueba y resalta las coincidencias, así que puedes confirmar el comportamiento con la vista en lugar de adivinar. Copia el resultado directamente a tu código cuando te convenza.
🧐 Preguntas Frecuentes
P. ¿El patrón funciona fuera de JavaScript?
R. Sigue la sintaxis de RegExp de JavaScript. Lo básico de las clases de caracteres es común a la mayoría de motores (PCRE, re de Python, Java), así que una clase sencilla como [0-9a-z] se traslada sin problemas. Las abreviaturas como \s pueden variar entre motores, así que conviene verificarlas al portar el patrón.
P. ¿Cómo incluyo un guion u otro símbolo de forma literal? R. Solo escríbelo en el campo de caracteres extra. Incluso en posiciones donde se leería como un rango, se escapa automáticamente y se añade como literal.
P. ¿Cuál es la diferencia entre coincidir y excluir?
R. Coincidir significa "cualquiera de estos caracteres"; excluir antepone ^ para que la clase signifique "cualquier cosa salvo estos". Mantén las mismas categorías y alterna entre las dos opciones para ver el contraste.
P. ¿Hay un límite de tamaño en la cadena de prueba? R. El campo no tiene un tope fijo, pero el resaltado depende del rendimiento del navegador, así que un texto muy largo puede notarse lento.
P. ¿Qué pasa con los caracteres repetidos? R. Los caracteres ya cubiertos por una categoría u otra entrada se omiten, de modo que la clase no se llena de elementos redundantes.
📚 Curiosidades sobre las clases de caracteres
Dentro de una clase, casi todos los metacaracteres pierden su poder. Un . representa un punto literal en lugar de "cualquier carácter", y *, + o ? dejan de ser cuantificadores para volverse símbolos normales. El guion es la excepción célebre: entre dos caracteres forma un rango, así que para usarlo como literal lo colocas al principio o al final de la clase, o lo escapas. Entender esta asimetría —casi todo se neutraliza, pero el guion y el acento circunflejo siguen mordiendo— es uno de los mejores atajos para dominar las expresiones regulares, porque explica la mayoría de los errores que cometen quienes escriben las clases a mano.