perl文件读取文件内容|perl 读取文件夹下所有txt

perl文件读取文件内容|perl 读取文件夹下所有txt的第1张示图

1. perl提取特定文本内容

@lines是一个数组,里面是文件中的每一行的内容。对该数据的操作方法是

foreach$line(@lines)#循环读取每一行{….#$line是一行的内容}

读到每一行后,对该行进行操作,使用split函数进行拆分。对于不行的文件格式,有不同的拆分方法,你应该看一行列的拆分方式,比如是用的逗号分隔,还是制表符分隔。拆分方法如下:

@cols=split(/[,]/,$line)#对$line进行拆分,拆分依据是逗号或制表符

然后得到的@cols数组就是每一列了,第一列就是$cols[0],第二列是$cols[1],然后你就可以将你的结果输出到OUT了。

不知道你基础如何,而且对你的文本格式不清楚,你需要的输出也描写的不清楚,所以不能给你整个完整程序了。如果还有问题请描写清楚再问。

2. perl 编程,读取文件然后修改文件内容的问题

可以试试先将要修改的文件改名,然后读取内容和修改内容,保存到另一个与原来同名的文件,最后将改了文件名的删除。

3. perl 读取文件夹下所有txt,并处理数据

还是昨天的那个程序,假设你的文件分为 1.txt 2.txt 3.txt,这个时候不要包含文件头,即所有的文件都是内容

程序修改为:

#$head=<>;while(<>){@line=split(/,/,$_);$lwfs=$line[7];$user=join('|',$line[1],$line[2],$line[3],$line[4],$line[6],$line[7]);$info{$lwfs}{'times'}+=1;$info{$lwfs}{'users'}{$user}+=1;}print"lwsf,user,times";foreachmy$key(keys%info){$times=$info{$key}{'times'};@users=keys$info{$key}{'users'};$usercount=$#users+1;print"$key,$usercount,$times";}

注意:读取文件头到$head变量的那句已经注释掉了。

此时运行方法为: perl my.pl 1.txt 2.txt 3.txt 就可以了

perl自己会把所有文件内容都读进来处理的

4. 急急急急!怎样用perl提取文件里特定的内容

类似下面的写法,先提取出来,之后直接写入文件my$H;open$H,"+>","out.log";while(<DATA>){if(//translation="(.*?)"/){print$1,"";print$H"$1";}}close$H;__DATA__/aa=123/bb=456/translation="MMMDDD"/aa=123/bb=456/translation="MMMDDD"/aa=123/bb=456/translation="MMMDDD"

5. 【求助】Perl 读取 TXT文件内容后进行相关操作

根据你的需要,我写了以下代码,经测试发现完全符合:第1个文件操作:单行执行-perl -nle 'print if /\smale/;' TableA.txt或者执行脚本-perl findmale.pl TableA.txt脚本代码—————–#!/usr/bin/perl #findmale.plprint grep /\smale/,<>;——————输出:1 13900 male Jack rose and gun3 13950 male narutayo folower4 25800 male babyface Light显示出男性的借书情况:符合

6. perl如何遍历指定文件夹下的指定扩展名文件并读取内容

不知道你这里读取具体指什么,我就把文件名打印出来,把文件内容打印出来吧。(程序指定两个参数,第一个参数是指定的文件夹名,每二个参数是指定的扩展名。)#!/usr/bin/perluse strict;use warnings;die "Usage: $0 <dir> <extion>\n" unless @ARGV == 2;my $Dir = $ARGV[0] ;my $Ext = $ARGV[1] ;opendir(DH, "$Dir") or die "Can't open: $!\n" ;#读取指定文件夹下面的指定扩展名的文件名,保存到数组里。my @list = grep {/$Ext$/ && -f "$Dir/$_" } readdir(DH) ;closedir(DH) ;chdir($Dir) or die "Can't cd dir: $!\n" ;foreach my $file (@list){ open(FH, "$file") or die "Can't open: $!\n" ; print "$file:\n" ; while(<FH>){ print ; } print "\n"; close(FH) ;}

7. 如何用perl读取txt文件 – Perl –

open STDIN,\"date.txt\" or die \"cannot open for :$!\";while(@date = ){[email protected];} 查看原帖>>

8. Perl获取文档中的内容

open(HANDLE,"1.txt");while(<HANDLE>){$line=$_;$value=(split/=/,$line)[-1];{$value=~s/s//g;print$value,"";}}closeHANDLE;

9. perl如何读入一个.txt文本中的内容,将文本里的内容放到一个数组里

很简单的,例子代码如下:open(FD,"1.txt");@lines=<FD>;close(FD);上面的代码之后,就可以使用@lines数组了,比如显示第三行的语句:print $lines[2];

10. perl 读入多个文件进行操作

下面是我自己一直用的框架:第一句和第二句是加一些限制,让它在语法可能有问题的时候报warning。第三句是把要读的文件的全文件名(包括后缀)存到@ARGV里面。第四句是@ARGV作品为main这个subroutine的输入变量。while的那个循环是把@ARGV里面所有文件的每一行从<>里面读到默认的$_里面(每次读一行),其中<>自动和@ARGV里面的文件的内容发生关系。然后print就是把每次读到的存在$_的那一行打印出来。use strict; use warnings;@ARGV = qw# input_file1.txt input_file2.txt #; main(@ARGV);sub main{while(<>){print;} }

未经允许不得转载:山九号 » perl文件读取文件内容|perl 读取文件夹下所有txt

赞 (0)