To the pursuit of truth.
perl 语法的变态在下面的代码中体现更甚,一条没头没尾的正则,不知道的还以为是语法错误,实际它是可以正常执行的。
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
#!perlmy $sFile = "d:/code/FindWord.pl";# < 代表读,>代表截断写,>>追加写if (open(READFILE, "<$sFile")) { while (<READFILE>) { s/^\s*//; # 正则这样写就行了,不用指明对谁作用 print "$_"; # 内置变量,上面正则相当于对这个内置变量操作 } close(READFILE);}# get 读一个字符while ($get = getc READFILE) { print $get;}# 追加写文件if (open WRITEFILE, ">>$sFile") { print WRITEFILE ("New Line...\n"); close(WRITEFILE);}# 拷贝文件open SRC, "<C:/test.pl";open DST, ">C:/test.bak.pl";while (<SRC>) { print DST $_;}close(DST);close(SRC);# 重命名文件rename ("C:/test.bak.pl", "C:/test.bak.pl.rename");# 删除已存在的文件unlink ("C:/test.bak.pl.rename");# 设置文件指针open SRC, "<C:/test.pl";print ("Before:" . (tell SRC) . "\n");for (my $idx = 0; $idx < 10; $idx++) { seek SRC, 256, 0;}print ("After:" . (tell SRC) . "\n");