我想寫一個輸出為 "OK "和 "Not OK "的regex,而不使用結構if, else:
validator_2.pl:
#!/usr/bin/perl
use strict;
use utf8;
use locale;
use warnings;
use 5.10.0;
my $input = <STDIN> 。
say "OK" if $input =~ m/^ 7s(d{3})sd{3}-d{2}-d{2}$/ || say "not OK"。
$ echo " 7 (921) 123-45-67"/span>|./validator_2.pl
確定
$ echo " 7 (921) 123-45-678888"|./validator_2.pl
不OK
不確定
uj5u.com熱心網友回復:
請學習下面的示范樣板代碼
注意:電話號碼驗證是一項相當復雜的任務,對于這個目的來說,regex不是正確的方法。use strict;
use warnings;
use feature 'say';
my $re = qr/^ 7s(d{3})sd{3}-d{2}$/;
while( my $input = <DATA> ) {
chomp($input)。
say "$input : "/span>, ($input =~ /$re/) ? 'OK' : 'Not OK';
}
__DATA__
7 (921) 123-45-67
7 (921) 123-45-67888888
輸出
7 (921) 123-45-67 。好的
7 (921) 123-45-678888 : 不OK
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/311382.html
標籤:
上一篇:搜索和替換一個檔案中的多行內容
