No estoy muy seguro de lo que quieres decir con "crear visualmente el código" (¿te refieres a una herramienta GUI?). Si eres como yo, me resulta imposible trabajar con expresiones regulares complejas, a menos que las exponga de manera estructurada, para poder obtener una mejor visualización representación de la lógica.
Realmente, sed
es solo un lenguaje de scripting, y puede presentarse como otros lenguajes, es decir. con un comando por línea. Aquí hay un ejemplo típico de lo que quiero decir: una expresión regular de sed que muestra un diseño estructurado .
Una característica muy útil sed
es su comando de depuraciónl
, que es un volcado de línea simple que muestra el espacio del patrón con líneas nuevas incrustadas que se muestran como\n
, etc.
El problema con sed
no es solo las expresiones regulares. Tiene un conjunto funky críptico de comandos para bucles y pruebas de condición; esto lleva tiempo acostumbrarse a ... La mejor herramienta que he encontrado para ayudarme a lidiar sed
es muy simple: leí el manual en detalle ... A partir de eso, es solo un proceso de comenzar poco a poco y obtener el cosas simples trabajando; luego acumule cosas más grandes para ganar experiencia ...
Perl regex tiene algunas características útiles para ayudar a diseñar patrones complejos; p.ej. la capacidad de ignorar los espacios en blanco en su expresión ... (Como desafío, y por el factor experiencia , escribí un sed
analizador para analizar mi sed
código para permitir ese espacio en blanco ... PD. No lo necesito ahora; debido a la experiencia :) En realidad, solo presentar comandos, uno por línea, es casi tan bueno como la función perl.
La mejor herramienta para ayudarte es: experiencia . p.ej. Abordar las preguntas sobre expresiones regulares en este sitio es una excelente manera de obtener esa experiencia ... Creo que las herramientas GUI realmente no ayudan mucho, porque inhiben la experiencia ...
En resumen, las mejores herramientas auxiliares son la experiencia y el diseño estructurado , y lea el manual (en detalle).
He usado mucho la palabra "expereince" ... con esto quiero decir que el acto de preparar expresiones regulares (y en el caso de sed
cualquier lógica de bucle, etc.) es el factor clave ... tipo "Regex-Builder" herramientas; no escribas la expresión regular para ti; solo lo prueban, y ciertamente no manejarán la lógica del programa de sed , porque eso no es una expresión regular ... (y usted ha señalado específicamente sed
) ... El resaltado de sintaxis que pueden ofrecer no hace mucho por mí . Sin embargo, un editor con una buena combinación de paréntesis es bastante útil (uso emacs).