免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1662 | 回复: 7
打印 上一主题 下一主题

匹配的问题 (已解决,谢谢各位.) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-05-20 16:17 |只看该作者 |倒序浏览
本帖最后由 IT-庸才 于 2010-05-24 11:07 编辑

@ARGV=shift;
...........
...........
foreach $abc(@efg){
        chomp $ARGV[0];
        if($abc=/$ARGV[0]/){
                ..............
        }
}
如果我从键盘输入的值在数组的第二个值中可以匹配,那么需要循环到下次才能匹配,其实我想每次键盘输入的值都能在第一次匹配上,有好方法么??

论坛徽章:
0
2 [报告]
发表于 2010-05-20 17:15 |只看该作者
lz,我用hash slices方法,不用匹配,你具体的需求不明,我先贴上code,看看有没有帮助哈:
#!/usr/bin/perl -w
while (1){
print "it is number: ";
$ARGV =  <STDIN>;
chomp($ARGV);
#@ARGV = shift;
#print $ARGV,"\n";
@efg=qw(12 34 56 78 99 hello hi);
@hash{@efg}=(0..$#efg);
# foreach (@efg){
#      $hash{$_} += 1;
#}
#while(($key,$value)=each(%hash)){
#  print "$key = $value\n";
#}
#print $hash{$ARGV[0]},"\n";
if($hash{$ARGV} ){
  print $ARGV,"\n";
  last;
}
else {
  next;
}
}

论坛徽章:
0
3 [报告]
发表于 2010-05-20 17:30 |只看该作者
修改 一下 @hash{@efg}=(0..$#efg);   改为 @hash{@efg}=(1..$#efg+1);

论坛徽章:
0
4 [报告]
发表于 2010-05-20 17:45 |只看该作者
恩,你这个方法估计不能满足我的要求,这是我QQ  287915714 麻烦加我一下,我给你仔细描述~这个里面说不清楚~谢谢~

论坛徽章:
0
5 [报告]
发表于 2010-05-21 12:39 |只看该作者
回复 1# IT-庸才


    你要干什么,给输入,输出

论坛徽章:
0
6 [报告]
发表于 2010-05-21 15:36 |只看该作者
回复 1# IT-庸才


    完全没明白你的意思

论坛徽章:
0
7 [报告]
发表于 2010-05-21 15:49 |只看该作者
需求不明不白,没任何条件,没任何约束,让你做一功能出来,结果还要求这,要求那的。
国软普遍存在的情况

论坛徽章:
0
8 [报告]
发表于 2010-05-21 16:52 |只看该作者
回复 4# IT-庸才


    刚刚看到信息,你把需求描述一下,这边高手云集,都帮你看看吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP