[opensuse-es] OT: una de perl
Buenas, tengo en una variable algo como: c:/dir1/dir2/dir3.../dirN que viene de un cwd(). Toda la ruta, salvo el último directorio puede ser cualquier cosa. No tiene una regla definida. Necesito encontrar la forma de quedarme sólo con "dirN". Cual es la forma más facil de hacerlo en perl (sí, tiene que ser en perl)? Muchas gracias por adelantado! -- Saludos, miguel Los agujeros negros son lugares donde dios dividió por cero. Black holes are places where god divided by zero. --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Me auto respondo: my($directory, $last_directory) = $cwd =~ m/(.*\/)(.*)$/; print "$last_directory\"; no tengo ni idea de qué es lo que hace (como la mitad de las cosas que hace perl), pero me duvuelve el string que necesito :-) Ante cualquier duda que tengáis.. select ANSWER from GOOGLE where string == "your duda" On 2/6/08, miguel gmail <miguel.listas@gmail.com> wrote:
Buenas,
tengo en una variable algo como:
c:/dir1/dir2/dir3.../dirN
que viene de un cwd(). Toda la ruta, salvo el último directorio puede ser cualquier cosa. No tiene una regla definida.
Necesito encontrar la forma de quedarme sólo con "dirN".
Cual es la forma más facil de hacerlo en perl (sí, tiene que ser en perl)?
Muchas gracias por adelantado!
-- Saludos, miguel
Los agujeros negros son lugares donde dios dividió por cero.
Black holes are places where god divided by zero.
-- Saludos, miguel Los agujeros negros son lugares donde dios dividió por cero. Black holes are places where god divided by zero. --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-02-06 a las 23:23 +0400, miguel gmail escribió:
Ante cualquier duda que tengáis..
select ANSWER from GOOGLE where string == "your duda"
Ni hablar, eso no es cierto. A ver si encuentras la mia: crear manuales man usando lyx. Ojo, la frase la encuentras, en inglés, pero ninguno reponde. Dicen que se puede, pero nadie lo demuestra, nadie escribe como. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQFHqt9QtTMYHG2NR9URAsJvAJsHE/tmVkGpQIFealRTI5R1EHdTYwCfapvb xZLdOFugY8DXOo1ovRp6ZNc= =rcBm -----END PGP SIGNATURE-----
Ni hablar, eso no es cierto.
A ver si encuentras la mia: crear manuales man usando lyx.
Ojo, la frase la encuentras, en inglés, pero ninguno reponde. Dicen que se puede, pero nadie lo demuestra, nadie escribe como.
Es que eso no existe! Es la típica gracia de estos alocados chicos del open source llevando la recurisividad hasta limites obscenos. No existe un manual sobre como crear manuales en Lyx. Me explico: Yo puedo crear un manual en lyx, si existe previamente un manual de lyx. Pero no puede existir ningun manual de lyx si antes no se ha creado el manual de lyx... que no se ha podido crear porque nadie ha podido hacerlo sin que haya antes un manual de lyx. Entiendes la paradoja? Eso es como lo del huevo y la gallina, sólo que aquí es más fácil, porque está claro que no hay huevo ni gallina. Es una demostración autoconsistente, recurrente y recursiva. Google puede hacer muchas cosas, pero no es dios: no puede crear cosas de la nada. ;-) -- Saludos, miguel Los agujeros negros son lugares donde dios dividió por cero. Black holes are places where god divided by zero. --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 7/02/08, miguel gmail escribió:
Es que eso no existe! Es la típica gracia de estos alocados chicos del open source llevando la recurisividad hasta limites obscenos.
Je, je... ¡muy bueno! X-) Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-02-07 a las 16:24 +0400, miguel gmail escribió:
Ni hablar, eso no es cierto.
A ver si encuentras la mia: crear manuales man usando lyx.
Ojo, la frase la encuentras, en inglés, pero ninguno reponde. Dicen que se puede, pero nadie lo demuestra, nadie escribe como.
Es que eso no existe! Es la típica gracia de estos alocados chicos del open source llevando la recurisividad hasta limites obscenos.
No existe un manual sobre como crear manuales en Lyx. Me explico: Yo puedo crear un manual en lyx, si existe previamente un manual de lyx. Pero no puede existir ningun manual de lyx si antes no se ha creado el manual de lyx... que no se ha podido crear porque nadie ha podido hacerlo sin que haya antes un manual de lyx.
Entiendes la paradoja? Eso es como lo del huevo y la gallina, sólo que aquí es más fácil, porque está claro que no hay huevo ni gallina. Es una demostración autoconsistente, recurrente y recursiva.
Google puede hacer muchas cosas, pero no es dios: no puede crear cosas de la nada.
;-)
Si estuvieras aquí al lado me ibas a oir. De retorcerte el pescuezo pa'rriba. Grrr! 'Amos a ver. Quiero escribir un manual, de esos que funcionan con "man mimanual". De esos que van codificados en TROFF: cer@nimrodel:~> file /usr/share/man/man1/man.1.gz /usr/share/man/man1/man.1.gz: gzip compressed data, from Unix, max compression cer@nimrodel:~> cp /usr/share/man/man1/man.1.gz . cer@nimrodel:~> gunzip man.1.gz cer@nimrodel:~> file man.1 man.1: troff or preprocessor input text Y si miras dentro, ves: '\" t .\" ** The above line should force tbl to be a preprocessor ** .\" Man page for man .\" .\" Copyright (C), 1994, 1995, Graeme W. Wilford. (Wilf.) .\" .\" You may distribute under the terms of the GNU General Public .\" License as specified in the file COPYING that comes with the .\" man-db distribution. .\" .\" Sat Oct 29 13:09:31 GMT 1994 Wilf. (G.Wilford@ee.surrey.ac.uk) .\" .pc .TH MAN 1 "2005-07-03" "2.4.3" "Manual pager utils" .SH NAME man \- an interface to the on-line reference manuals .SH SYNOPSIS .\" The general command line .B man .RB [\| \-c \||\| \-w \||\| \-tZ \|] .RB [\| \-H \|\c .RI [\| browser \|]\|] Ahora bien, como mi masoquismo tiene un límite, no quiero aprender troff de las narices (lo de arriba). Quiero hacerlo en algo moderno, como openoffice. Bueno, vale, eso es demasiao moderno. En LyX. Y vale, en LyX tengo un ejemplo antiguo, que usa la clase "manpage" de linuxdoc, al cual parece que no existe, y por tanto pruebo con alguna de "docbook". Que sale un ficherito en sgml xml que se supone que se convierte al manual, pero no traga. ¿Capishi? - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4-svn0 (GNU/Linux) iD8DBQFHqw1XtTMYHG2NR9URAsmoAJ49aDYzPtMIQD1v67PBOaOWUp2OyQCggT5Q ESpNuZia4LvqF1taUtii2xQ= =u3C0 -----END PGP SIGNATURE-----
Buenas,
tengo en una variable algo como:
c:/dir1/dir2/dir3.../dirN
que viene de un cwd(). Toda la ruta, salvo el último directorio puede ser cualquier cosa. No tiene una regla definida.
Necesito encontrar la forma de quedarme sólo con "dirN".
Cual es la forma más facil de hacerlo en perl (sí, tiene que ser en perl)?
Muchas gracias por adelantado!
No se de perl tanto.. pero si te puedo decir que debes buscar en expresiones regulares algo como "\/.*$", lo que te digo es que busques las funciones de expresiones regulares y con ellas busques la cadena que te coloque que quiere decir \/ = el caracter de division .* = seguido de cualquier cosa cero o mas veces (si necesitas aunque sea un caracter en tonces la cambias por .+ (que significa, cualquier cosa una o mas veces) $ = hasta el final de la linea con esta expresion aislas el /dirN , solo te queda quitar el slash Jaime V P.D de los 3 centavos de perl que se... si se que es un potente buscador de expresiones regulares ______________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Mas "sencillo": #!/usr/bin/perl $a = 'C:/a/b/c/ddidiid'; @b = split('/',$a); print $b[$#b]; ....y se entiende más no? jajajjaa 2008/2/6, Jaime Velez <javobqcol@yahoo.es>:
Buenas,
tengo en una variable algo como:
c:/dir1/dir2/dir3.../dirN
que viene de un cwd(). Toda la ruta, salvo el último directorio puede ser cualquier cosa. No tiene una regla definida.
Necesito encontrar la forma de quedarme sólo con "dirN".
Cual es la forma más facil de hacerlo en perl (sí, tiene que ser en perl)?
Muchas gracias por adelantado!
No se de perl tanto.. pero si te puedo decir que debes buscar en expresiones regulares algo como "\/.*$", lo que te digo es que busques las funciones de expresiones regulares y con ellas busques la cadena que te coloque que quiere decir \/ = el caracter de division .* = seguido de cualquier cosa cero o mas veces (si necesitas aunque sea un caracter en tonces la cambias por .+ (que significa, cualquier cosa una o mas veces) $ = hasta el final de la linea con esta expresion aislas el /dirN , solo te queda quitar el slash
Jaime V
P.D de los 3 centavos de perl que se... si se que es un potente buscador de expresiones regulares
______________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com
--------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
--------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
participants (5)
-
Camaleón
-
Carlos E. R.
-
Jaime Velez
-
miguel gmail
-
Raul Romero