🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #1416

Re: Rutas de directorios dentro de expresiones regulares en perl

#1416
From: Gonzalo Pérez de Olaguer Córdoba
Date: Mon, 12 Dec 2005 05:54
42 lines
2639 bytes
Hola "F" <esnewsfQuItAeStO@EsToCaMbIeNyahoo.es>
el Mon, 12 Dec 2005 05:11:19 GMT escribiste:

> Tengo una seria de cadenas, en formato windows (Esto es con el separador de 
> directorios, con la barra \ en lugar del /)
> 
> `Por ejemplo
> 
> C:\prueba\prueba\otracosa\otracosa\fichero.txt
> 
> que se obtiene, directamente con un readdir
> 
> bien, yo quiero sustuir los primeros directorios por ejemplo quitar 
> "C:\prueba\prueba\" y dejar solo "otracosa\otracosa\fichero.txt"
> 
> Para eso podria hacer
> 
> $dirquitar= "C:\\prueba\\prueba\\";
> $direntrada="C:\\prueba\\prueba\\otracosa\\otracosa\\fichero.txt";
> 
> $direntrada=~ s/^$dirquitar/$direntrada/gi;
> 
> ¿que pasa?, que no funciona por que $dirquitar, encuntra caracteres \, que 
> interepra como secuencias de escape al analizar la expresion regular, y no 
> los toma literales, y me gustaria evitar eso  ¿alguna idea?

sustituir los \ de entrada por alguna otra cosa (perldoc tr), procesar
y después recuperar los \ originales a partir de la *otra cosa*

la otra cosa podría ser \\, / o cualquier cosa que no esperes encontrarte
en las entradas

otra posibilidad, para este caso, es usar length, substr y eq para
determinar la longitud de $dirquitar, separar direntrada en sus dos
partes y comparar los strings.

-- 
Gonzalo Pérez de Olaguer Córdoba <gpoc@iies.es>
PGP key 2861C704 --- F206 5671 6789 425D 111C  1302 214F 1934 2861 C704
Technical Details
Message-ID: <20051212065414.7ebc63a8@petres.salonet.snet>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!news.antakira.com!cagarruta.escomposlinux.org!hercules.escomposlinux.org!escomposlinux.org!not-for-mail
References: <XD7nf.327685$E72.2884889@telenews.teleline.es>

Show Full Headers
Complete Article Headers
X-Google-Thread: f86c8,dd0585c0c756e3c4
X-Google-Attributes: gidf86c8,public
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!news.antakira.com!cagarruta.escomposlinux.org!hercules.escomposlinux.org!escomposlinux.org!not-for-mail
From: Gonzalo Pérez de Olaguer Córdoba <gpoc@iies.es>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Rutas de directorios dentro de expresiones regulares en perl
Date: Mon, 12 Dec 2005 06:54:14 +0100
Organization: escomposlinux.org
Lines: 42
Message-ID: <20051212065414.7ebc63a8@petres.salonet.snet>
References: <XD7nf.327685$E72.2884889@telenews.teleline.es>
NNTP-Posting-Host: 59.red-80-25-103.staticip.rima-tde.net
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: quoted-printable
X-Trace: hercules.cohp1 1134366855 15980 80.25.103.59 (12 Dec 2005 05:54:15 GMT)
X-Complaints-To: newsmaster@cofrentes.no-ip.com
NNTP-Posting-Date: Mon, 12 Dec 2005 05:54:15 +0000 (UTC)
X-Newsreader: Sylpheed-Claws 1.0.4 (GTK+ 1.2.10; i386-pc-linux-gnu)