什么是阅读文本的好方法?

时间:2010-03-06 14:24:03

标签: perl stdin readline

在我的短信脚本中,我在文本中读到要使用此子程序发送:

my $input = input( "Enter the input: " );

sub input {
    my $arg = shift;
    print $arg if $arg;
    print "\n ";
    chomp( my $in = <> );
    return $in;
}

这样我只能通过取消所有错误来纠正错误,直到我到达错误,这只在最后一行。 有没有更好的方式来阅读我的文字?

2 个答案:

答案 0 :(得分:2)

这是读取输入的“正常”方式:

use strict;
use warnings;

# ...

while (my $input = <>)
{
    chomp $input;
    handle_error($input), next unless validate($input);

    # do something else with $input...    

}

答案 1 :(得分:1)

您可以在input子例程中使用while循环,例如

my $is_valid = 0;
my $input; 

while (!$is_valid) {   
    print "Enter something: ";  
    $input = <>;  
    $is_valid = validate_input($input);
}