perl提取特定文本内容
想用(infile,outfile)=@ARGV来吧一个dat文件中的特定内容提取出来写入新文件里,请问该如何写呢还有我对openIN,"$INFILE";@lines=...
想用(infile,outfile)= @ARGV来吧一个dat文件中的特定内容提取出来写入新文件里,请问该如何写呢
还有我对
open IN,"$INFILE";@lines = <IN>;
里面的@lines 里得到的内容不太了解,不知道得到的到底是什么样的
输入文件的格式如上图所示,要提取并写入新文件的是第一列标记为ID 和SQ的项目
a 展开
还有我对
open IN,"$INFILE";@lines = <IN>;
里面的@lines 里得到的内容不太了解,不知道得到的到底是什么样的
输入文件的格式如上图所示,要提取并写入新文件的是第一列标记为ID 和SQ的项目
a 展开
1个回答
展开全部
@lines是一个数组,里面是文件中的每一行的内容。对该数据的操作方法是
foreach $line (@lines) # 循环读取每一行
{
.... # $line是一行的内容
}
读到每一行后,对该行进行操作,使用split函数进行拆分。对于不行的文件格式,有不同的拆分方法,你应该看一行列的拆分方式,比如是用的逗号分隔,还是制表符分隔。拆分方法如下:
@cols = split(/[,\t]/, $line) # 对$line进行拆分,拆分依据是逗号或制表符
然后得到的@cols数组就是每一列了,第一列就是$cols[0],第二列是$cols[1],然后你就可以将你的结果输出到OUT了。
不知道你基础如何,而且对你的文本格式不清楚,你需要的输出也描写的不清楚,所以不能给你整个完整程序了。如果还有问题请描写清楚再问。
追问
你好,谢谢你的回答。才接触perl三天,赶鸭子上架地看了个教程就开始编了。
实际内容需要把一个txt文件转化成fasta格式
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询