• Publicidad

Modificar archivos con Perl

¿Ya sabes lo que es una referencia? Has progresado, el nível básico es cosa del pasado y ahora estás listo para el siguiente nivel.

Modificar archivos con Perl

Notapor zozo666 » 2007-12-21 07:46 @365

Buenas gente, necesitaría saber si hay alguna forma de modificar un archivo en Perl, por ejemplo cambiar unas palabras o unos caracteres y/o borrar caracteres.

Lo que necesitaría es solamente cambiar 2 valores de esta cadena de texto:

a:4:{i:0;a:3:{s:8:"cat_name";s:7:"General";s:2:"id";s:1:"1";s:4:"blog";s:1:"1";}i:1;a:3:{s:8:"cat_name";s:7:"General";s:2:"id";s:1:"6";s:4:"blog";s:1:"3";}i:2;a:3:{s:8:"cat_name";s:8:"General";s:2:"id";s:1:"8";s:4:"blog";s:1:"5";}i:3;a:3:{s:8:"cat_name";s:7:"General";s:2:"id";s:2:"10";s:4:"blog";s:1:"7";}}


Necesito cambiar el 3º carácter (en este caso es 4), borrar el último carácter y luego agregarle información.

¿Hay alguno manera de trabajar con el archivos que contiene esto para modificar lo que necesito?.

Muchas gracias, perleros.
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483

Publicidad

Notapor explorer » 2007-12-21 08:23 @391

Esta es una respuesta rápida (ahora no tengo mucho tiempo, y esto es además el foro Intermedio):

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$linea = 'a:4:{i:0;a:3:{s:8:"cat_name";s:7:"General";s:2:"id";s:1:"1";s:4:"blog";s:1:"1";}i:1;a:3:{s:8:"cat_name";s:7:"General";s:2:"id";s:1:"6";s:4:"blog";s:1:"3";}i:2;a:3:{s:8:"cat_name";s:8:"General";s:2:"id";s:1:"8";s:4:"blog";s:1:"5";}i:3;a:3:{s:8:"cat_name";s:7:"General";s:2:"id";s:2:"10";s:4:"blog";s:1:"7";}}';

# Necesito cambiar el 3º carácter (en este caso es 4),
substr($linea, 2, 1) = 'X';

# borrar el último carácter
chop $linea;

# y luego agregarle información.
$linea .= 'Otra cosa';
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor zozo666 » 2007-12-21 09:05 @420

Muchísimas gracias, ya lo pruebo, disculpas.
zozo666
Perlero nuevo
Perlero nuevo
 
Mensajes: 139
Registrado: 2007-05-26 10:36 @483


Volver a Intermedio

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron