求助!perl抓取匹配行的下一行字符
时间:2010-08-28
来源:互联网
各位大牛们,小弟会一点入门级perl语言,有一个问题想请教大家:
我想知道,perl对变量的模式匹配是如何操作的,例如,我有一个文件,里面数据的格式如下
javascript:;
数据名称为>后面的那些字符,我有一个文件,全是数据名称,我想提取出那些匹配的数据名称下面的字符(ttacg之类的),自己弄了个难看的脚本如下
#!/usr/bin/perl
if (@ARGV < 2)
{
die "usage: outputseq See script for details.\n";
}
open(LOCI, "$ARGV[0]") || die "usage: outputseq location file \nCan not open the seq_file $ARGV[0].\nSee script for details.\n";
open(DNASEQ, "$ARGV[1]") || die "usage: genome seq file \nCan not open the seq_file $ARGV[1].\nSee script for details.\n";
while($seq=<LOCI>)
{ @seq=split(/\s+/,$seq);
$name=$seq[1];
for($info=<DNASEQ>)
{
if($info=~/$name/)
{
print "$info";
$info=<DNASEQ>;
print $info;
last;
}
}
}
close LOCI;
close DNASEQ;
结果总是弄不出来,不得已请教各位,希望大家能帮我看看,非常感谢!
我想知道,perl对变量的模式匹配是如何操作的,例如,我有一个文件,里面数据的格式如下
javascript:;
数据名称为>后面的那些字符,我有一个文件,全是数据名称,我想提取出那些匹配的数据名称下面的字符(ttacg之类的),自己弄了个难看的脚本如下
#!/usr/bin/perl
if (@ARGV < 2)
{
die "usage: outputseq See script for details.\n";
}
open(LOCI, "$ARGV[0]") || die "usage: outputseq location file \nCan not open the seq_file $ARGV[0].\nSee script for details.\n";
open(DNASEQ, "$ARGV[1]") || die "usage: genome seq file \nCan not open the seq_file $ARGV[1].\nSee script for details.\n";
while($seq=<LOCI>)
{ @seq=split(/\s+/,$seq);
$name=$seq[1];
for($info=<DNASEQ>)
{
if($info=~/$name/)
{
print "$info";
$info=<DNASEQ>;
print $info;
last;
}
}
}
close LOCI;
close DNASEQ;
结果总是弄不出来,不得已请教各位,希望大家能帮我看看,非常感谢!
1.png (41.34 KB)
|
作者: xp198766 发布时间: 2010-08-28
你可以先建一个哈希,将所有的数据名称作为key。然后再打开另一个文件,一行一行读,如果存在这个key,就打印出来。这样就得到你想要的数据了。
作者: huangfei777528 发布时间: 2010-08-28
非常感谢!
思路我清楚了,我对hash还不够了解,感觉不知道如何实现,能给点提示吗?举个例子可以吗?
谢谢!
思路我清楚了,我对hash还不够了解,感觉不知道如何实现,能给点提示吗?举个例子可以吗?
谢谢!
作者: xp198766 发布时间: 2010-08-28
QUOTE:
非常感谢!
思路我清楚了,我对hash还不够了解,感觉不知道如何实现,能给点提示吗?举个例子可以吗?
谢 ...
xp198766 发表于 2010-08-28 15:02
思路我清楚了,我对hash还不够了解,感觉不知道如何实现,能给点提示吗?举个例子可以吗?
谢 ...
xp198766 发表于 2010-08-28 15:02
看小骆驼·
作者: wfnh 发布时间: 2010-08-28
QUOTE:
看小骆驼·
wfnh 发表于 2010-08-28 15:37
wfnh 发表于 2010-08-28 15:37

作者: xp198766 发布时间: 2010-08-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28