Perl代码片段:
my $export = $doc;
$export =~ s:\.odt:\.pdf:;这将如何写得更干净呢?不仅仅是写它的900种其他方式,TMTOWTDI。
发布于 2010-06-02 09:38:31
my ($export = $doc) =~ s{\.odt}{\.pdf};更新:解决方案不能编译(请注意:在SO上发布之前测试)。相反,你可以说
(my $export = $doc) =~ s{\.odt}{\.pdf};发布于 2010-06-02 09:56:48
我使用[.]来匹配文字句点:
$export ~= s{[.]odt$}{.pdf};请注意,只有s///调用的前半部分是正则表达式。替换是一个普通字符串,不需要句点来转义。
不过,您可能希望使用Path::Class将文件表示为对象,而不是字符串。
发布于 2010-06-04 11:34:08
my %ext =( 'odt‘=> 'pdf’等...);(my $export = $doc) =~ s{.(^.+)$}{‘..($ext{$1}||$1})}例如;
https://stackoverflow.com/questions/2954432
复制相似问题