从STDIN路径位置删除字符

时间:2013-02-23 05:07:45

标签: perl

我有一个Perl程序,要求用户提供程序输入的文件位置。 用户可以将文件从其位置拖动到命令行,而不是让用户输入整个位置?当我尝试这个时,它会在文件位置周围放置'。 你可以在程序试图打开文件之前从STDIN中删除'字符吗?我感觉这是一个操作系统功能,而不是perl。

1 个答案:

答案 0 :(得分:2)

您可以使用

从字符串中删除单引号
$string =~ s/'//g;

或稍微更有效率

$string =~ tr/'//d;

但您是否考虑过在命令行上传递文件名,以便使用

运行Perl程序
perl myprogram.pl myfile

这样引号是正确的,并且无需在程序中打开该文件。你可以写

while (<>) {
  chomp;
  ...
}