perl的循环嵌套结果输出不了

我写了如下perl的循环嵌套,个人觉得条理上没什么问题,但是不管怎么写都只有第一行有结果,不知道错在什么地方,麻烦高手帮忙看一下,急用,跪谢!while(<FF>){ch... 我写了如下perl的循环嵌套,个人觉得条理上没什么问题,但是不管怎么写都只有第一行有结果,不知道错在什么地方,麻烦高手帮忙看一下,急用,跪谢!
while (<FF>) {
chomp;
$temp=$_;
while (<F1>) {
if (/\t$temp\t/){
chomp;
print F2 "$_\t";
}
}
print F2 "\n";
}
(以上代码我把while 替换为foreach , for都试过了,结果都只是第一行有结果,其他行都是换行符。这段循环中,文件FF每行只有一个数字,也就是只有一列;想把文件F1中包含FF中每个数字的行放在一列;即F1中包含数字3的都放一行,包含数字5的都放一行……)
展开
 我来答
百度网友d580670
推荐于2016-06-12 · TA获得超过1983个赞
知道大有可为答主
回答量:2054
采纳率:82%
帮助的人:685万
展开全部
当然了
while (<F1>) {
if (/\t$temp\t/){
chomp;
print F2 "$_\t";
}
}这个while执行完已经到文件尾了,下一次循环没法工作的
解决方法是,将F1的文件读到一个数组里先,之后是遍历数组而不是文件
方法二读到F1的文件seek回文件头
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式