• Publicidad

Eliminar los tres últimos caracteres de una palabra

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Eliminar los tres últimos caracteres de una palabra

Notapor leire_12 » 2009-08-28 08:28 @394

¡Hola!

Necesito una expresión regular que, dado una palabra, por ejemplo (modulo.pm), me elimine ".pm". Lo quiero hacer con el operador de sustitición de manera que me quedaría:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$palabra = "modulo.pm"

$palabra =~ s/????//g;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Lo que no sé es qué poner en el lugar donde están la interrogaciones.

¡Muchas gracias!
Última edición por explorer el 2009-08-28 12:13 @551, editado 2 veces en total
Razón: Ortografía, bloques de código
leire_12
Perlero nuevo
Perlero nuevo
 
Mensajes: 18
Registrado: 2009-07-28 07:12 @342

Publicidad

Re: eliminar los tres ultimos caracteres de una palabra

Notapor explorer » 2009-08-28 10:02 @460

En el caso de que sean exactamente 3 letras, puedes hacer
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$palabra = 'modulo.pm';
$palabra =~ s/...$//;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

Ahora bien... otra cosa es quitar la extensión de un fichero, que puede ser de 0 a 3 caracteres. Solo estamos seguros de que tiene extensión si aparece un punto, así que lo podemos usar para quitar esos últimos caracteres:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$palabra = 'modulo.pm';
$palabra =~ s/\..{0,3}$//;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

Estamos diciendo que hacia el final ($) hay un punto (\.) seguido de 0 a 3 caracteres cualesquiera (.).

De todas formas, es más portable usar File::Basename.
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

Re: eliminar los tres ultimos caracteres de una palabra

Notapor leire_12 » 2009-08-28 10:16 @470

¡Muchas gracias! ¡Ya está solucionado!
Última edición por explorer el 2009-08-28 10:24 @475, editado 1 vez en total
Razón: Ortografía: faltaban las '!'
leire_12
Perlero nuevo
Perlero nuevo
 
Mensajes: 18
Registrado: 2009-07-28 07:12 @342


Volver a Básico

¿Quién está conectado?

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

cron