Generador de código regex
WebTodo se ejecuta en tu navegador: no se sube nada
Escribe una expresión regular, elige un lenguaje y obtén cuatro fragmentos listos: buscar, extraer todas, reemplazar y probar. El punto de esta herramienta es cuántas barras invertidas hay que escribir. El mismo `\d+` necesita un número distinto según el lenguaje, y equivocarse no lanza nada: · En JavaScript `"\d"` es `"d"` — un escape inválido dentro de una cadena se descarta en silencio, así que tu patrón se convierte sin avisar en `d` y no coincide con nada. Escribe `"\\d"` o usa un literal de regex `/…/`. · Python usa una cadena cruda `r"…"`, así que no hace falta duplicar; una cadena normal ahora lanza un DeprecationWarning. · Las cadenas entre comillas dobles de Java y C# tratan la barra invertida como escape, así que hay que escribir `\\d`. · En una cadena PHP entre comillas simples solo `\\` y `\'` son escapes, así que `'/\d/'` es correcto: duplicar ahí es el error. · Go usa una cadena cruda entre acentos graves, que tampoco necesita duplicar. ⚠️ Un patrón que no compila se rechaza aquí en vez de convertirse en fragmentos que fallan en tu proyecto, donde el mensaje de error es mucho menos claro. ⚠️ El `$1` / `\1` de un reemplazo es una referencia de grupo y su sintaxis varía (`\1` en Python, casi siempre `$1` en los demás); hay una nota que lo dice.
Funciones
- Seis lenguajes: JavaScript, Python, Java, Go, PHP, C#
- ⚠️ Cada lenguaje recibe su escape correcto, no la misma cadena reutilizada
- Cuatro fragmentos: buscar, extraer todas, reemplazar, probar
- Los fragmentos son completos y ejecutables (con import / using y declaraciones), no una expresión suelta
- Los modificadores se traducen por lenguaje (`re.IGNORECASE`, `Pattern.CASE_INSENSITIVE`, `RegexOptions.IgnoreCase`)
- ⚠️ Un patrón que no compila se avisa al momento
- El código generado no cambia con el idioma de la interfaz
- Todo se calcula localmente
Cómo se usa
- Escribe una expresión regular (sin las barras de los extremos)
- Elige el lenguaje de destino; añade modificadores y un reemplazo si hace falta
- Aparecen al momento cuatro fragmentos para ese lenguaje
- Antes de copiar, mira la fila «dentro de un literal de cadena»: ahí es donde se comete el error
Preguntas frecuentes
- ¿Por qué "\d" no funciona en JavaScript?
- Porque un escape inválido dentro de una cadena se descarta en silencio: `"\d"` en JS es solo `"d"`, así que tu patrón acaba coincidiendo con la letra d. Es el tipo de fallo más difícil de encontrar: ni error ni aviso, simplemente nunca coincide. Dos arreglos: escribir `"\\d"` (duplicado) o usar un literal de regex `/\d/` (sin duplicar dentro de un literal, que es lo que hacen los fragmentos de JavaScript de aquí). Las cadenas entre comillas dobles de Java y C# se comportan igual, salvo que fallan en tiempo de compilación, lo que es más seguro.
- ¿Por qué no hay que duplicar en una cadena PHP entre comillas simples?
- Porque solo `\\` y `\'` son secuencias de escape en una cadena PHP entre comillas simples; cualquier otra barra invertida se conserva tal cual. Así que el `\d` de `'/\d/'` llega intacto al motor de regex. Las cadenas PHP entre comillas dobles, en cambio, tratan `\d` como escape (el resultado sigue siendo d, pero se emite un aviso), así que ahí sí hay que duplicar. Dos reglas de comillas en un mismo lenguaje es justo por lo que esta herramienta da fragmentos por lenguaje.
- ¿Puedo pegar esto directamente en un proyecto?
- Sí: los fragmentos están completos, con el import/using y las declaraciones de variables. Un par de cosas son tuyas: el nombre de la variable (`text` es tu propia cadena) y la sintaxis de la referencia de grupo en un reemplazo (Python usa `\1`, Go `$1` o la más segura `${1}`, casi todos los demás `$1`). Ten en cuenta también que solo se traducen los modificadores compartidos (i / m / s): `g` es una idea propia de JavaScript, y otros lenguajes expresan «seguir buscando coincidencias» con un bucle, por lo que el fragmento de extraer todas en Java es `while (matcher.find())`. El modificador `y` (pegajoso) también es exclusivo de JavaScript, y al elegirlo se avisa de que se ignora.
Herramientas relacionadas
Probador de regex
TextoPrueba expresiones regulares en el navegador: resaltado en vivo, grupos de captura, vista previa de sustitución y código para cinco lenguajes.
Resaltado de código
WebColorea código con sintaxis y cópialo con el color intacto a PowerPoint, Word o correo; o exporta HTML con estilos en línea para tu blog. 26 lenguajes.
Analizador de URL
WebDescompone una URL en esquema, host, puerto, ruta, parámetros y ancla, con cada parámetro en crudo y decodificado. Todo en tu navegador.
Analizador de UA
WebAnaliza un User-Agent: navegador, versión, sistema, tipo de dispositivo y motor, con las reglas que coinciden. Solo coincidencia de patrones.
Códigos de estado HTTP
WebConsulta un código de estado HTTP: significado, clase 1xx–5xx, usos típicos y trampas habituales. También busca por palabra clave. Todo local.
Tipos MIME
WebConsulta el tipo MIME a partir de una extensión, o la extensión por defecto de un tipo de medio. Solo los habituales. Todo en tu navegador.