regex encontrar y sustituir el mando?

  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Marzo 25th, 2008, 6:47 am

Im que busca somthing me puede pasar un nombre de archivo, de expresión regular perl-compatibles, y un patrón de reemplazo para encontrar y reemplazar a través de un terminal.

Somthing como este.

Código: [ Select ]
command /path/to/file.html "~(<link\s+[^>]*href=['\"])[^'\"]*styles\.css['\"]~i" "newstyles.css"


O esta

Código: [ Select ]
command /path/to/file.html "~\s+$~mi" ""
Strong with this one, the sudo is.
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Marzo 25th, 2008, 6:47 am

  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6130
  • Loc: Seattle, WA
  • Status: Offline

Nota Marzo 26th, 2008, 3:57 pm

Esto hace que algo me quieres escribir esto a mí mismo.

Si me sale algo de tiempo libre este fin de semana, creo que lo haré.
The Beer Monocle. Classy.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Marzo 26th, 2008, 10:11 pm

Esto no es exactamente lo que estaba buscando, pero funciona y utiliza una sintaxis de expresiones regulares Im familiar.

Utilización de la CLI de PHP para pasar argumentos a un script preg_replace.

replace.php
Código: [ Select ]
<?php
    echo preg_replace($argv[2], $argv[3], file_get_contents($argv[1]));
?>
  1. <?php
  2.     echo preg_replace($argv[2], $argv[3], file_get_contents($argv[1]));
  3. ?>


el uso de
Código: [ Select ]
php -f replace.php test.html "~(<link\ef\s*=\s*['\"][^'\"]*)/style\.css~si" '/new.css' > test2.txt
Strong with this one, the sudo is.
  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6130
  • Loc: Seattle, WA
  • Status: Offline

Nota Marzo 26th, 2008, 10:20 pm

Ese fue mi primer pensamiento, pero me imaginé que estaba buscando un pequeño ejecutable que se puede añadir a su PATH.
The Beer Monocle. Classy.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Marzo 27th, 2008, 7:00 am

En realidad creo que el pequeño ejecutable, o la fuente de uno, es lo que Im busca.
Strong with this one, the sudo is.
  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6130
  • Loc: Seattle, WA
  • Status: Offline

Nota Marzo 31st, 2008, 8:39 pm

Im buscando en la Boost biblioteca regex para ello, desde C + + no tiene incorporado en el estilo Perl-regex capacidades. Tan pronto como me da la oportunidad de jugar un rato con él Malos poner juntos un programa pequeño.
The Beer Monocle. Classy.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Abril 12th, 2008, 9:11 pm

Si bien el conocimiento de gedit me encontré con SED que me pueden utilizar a través de aplicaciones externas gedits plugin.

Attachments:
gedit-sed.png

An example of sed being used to strip whitespace from the end of lines in a document.



La sintaxis de sed es ligeramente diferente a lo que Im utilizado, pero desde que me puede salvar comandos como herramientas y usarlas más tarde creo que puedo trabajar en torno a la sintaxis.
Strong with this one, the sudo is.
  • spork
  • Brewmaster
  • Silver Member
  • Avatar de Usuario
  • Registrado: Sep 22, 2003
  • Mensajes: 6130
  • Loc: Seattle, WA
  • Status: Offline

Nota Abril 14th, 2008, 8:22 pm

Interesante. Sigo en plan de hacer esta pequeña aplicación cuando llegue la oportunidad, he sido insanely ocupado últimamente.

Eso SED parece que utiliza la sintaxis POSIX regex.
The Beer Monocle. Classy.

Publicar Información

  • Total de mensajes en este tema: 8 mensajes
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 73 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC