利用Perl的File::Basename包解析全文件路径信息

文件路径可分为:位置、文件、扩展名。以c:/perl/bin/perl.exe來說,位置是指c:/perl/bin,文件名称为perl,扩展名指.exe。
预设情況下,File::Basename假设你用的是Unix型态的路径名称,但可经由呼叫fileparse_set_fstype来改变文档指定,可用的参数包括VMS, MSDOS, MacOS, AmigaOS, MSWin32。
File::Basename中常用的方法有fileparse, basename, dirname。
fileparse方法会传回包含路经名称三个部份的串列。
dirname方法传回路径位置。
basename方法传回档案名称。


[plain]  view plain copy
  1. use File::Basename;  
  2. use strict;  
  3. fileparse_set_fstype('MSWin32');  
  4. my $path='c:/perl/bin/perl.exe';  
  5. my($fname, $dir, $ext)=fileparse($path, '.exe');  
  6. print "Location: $dir/nBasename: $fname/nExtension: $ext/n";  
  7. my($basename)=basename($path, '.exe');  
  8. print "basename(): $basename/n";  
  9. my($dirname)=dirname($path);  
  10. print "dirname(): $dirname/n";  


输出结果:
Location: c:/perl/bin/
Basename: perl
Extension: .exe
basename(): perl
dirname(): c:/perl/bin

fileparse和basename的第二個参数(选择性的参数)是一般的常规表示式(regular expression)串列,它可以用来除去扩展名,让你比对某些特殊文件。

猜你喜欢

转载自blog.csdn.net/xs1326962515/article/details/78957781