Lo hago /(\.[^.]+)$/
en Perl para leer la extensión de un archivo, por ejemplo Text.txt
. ¿Cómo puedo eliminarlo .
para que la salida sea Texttxt
?
Respuesta1
El grupo de coincidencias /(…)/
contiene cualquier cosa.adentrolos paréntesis. Si no quieres que el punto forme parte, ponloafuera
los paréntesis: /\.([^.]+)$/
.
#!/usr/bin/env perl
use strict;
use warnings;
my $filename = 'Test.txt';
$filename =~ s/(.*)\.([^.]+)$/$1$2/;
# ^^ ^^^^^
# $1 $2
print "filename: '$filename'\n";
# prints "Testtxt"