首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Perl:搜索文件

Perl:搜索文件
EN

Stack Overflow用户
提问于 2011-10-26 10:49:31
回答 1查看 200关注 0票数 1

我正在创建一个perl脚本,它接受我需要解析文件并搜索字符串的文件(例如./prog文件)。这是我认为可以工作的方法,但它似乎不起作用。该文件每行包含一个工作,包含50行

代码语言:javascript
复制
@array = < >;   
    print "Enter the word you what to match\n";
    chomp($match = <STDIN>);        

    foreach $line (@array){
        if($match eq $line){
            print "The word is a match";
            exit
        }
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-26 10:53:14

您正在处理用户输入,而不是文件中的行。

它们不能匹配;一个以\n结尾,另一个则不是。摆脱你的chomp应该可以解决这个问题。(或者,向循环中添加一个chomp($line) )。

代码语言:javascript
复制
$match = <STDIN>;

代码语言:javascript
复制
foreach $line (@array){
    chomp($line);
    if($match eq $line){
        print "The word is a match";
        exit;
    }
}

编辑,希望操作员从下面的评论中注意到他的错误:

eq更改为==不会“修复”任何东西;它会破坏它。您需要使用eq进行字符串比较。您需要执行上述操作之一来修复您的代码。

代码语言:javascript
复制
$a = "foo\n"; 
$b = "bar"; 
print "yup\n" if ($a == $b);

输出:

yup

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7898221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档