我/(\.[^.]+)$/
在 Perl 中读取文件的扩展名,例如Text.txt
。我怎样才能删除.
以便输出为Texttxt
?
答案1
匹配组/(…)/
包含任何内容里面括号中。如果你不想让点成为其中的一部分,那么就把它放在外部
括号内:/\.([^.]+)$/
。
#!/usr/bin/env perl
use strict;
use warnings;
my $filename = 'Test.txt';
$filename =~ s/(.*)\.([^.]+)$/$1$2/;
# ^^ ^^^^^
# $1 $2
print "filename: '$filename'\n";
# prints "Testtxt"