您好我想解析一个包含字符串的@array
并查看是否存在"This is bird"
字符串。如果在场则做其他事情。我是在perl做的。
我使用了if($string ~~ @array)
,但即使存在匹配的字符串也没有输出。如果我使用它,它无法比较两个字符串。
@array
可以包含任意数量的字符串,有时甚至是1个字符串。有没有其他方法可以做到。
答案 0 :(得分:2)
如果您使用智能匹配运算符(~~
)在列表中查找元素,the syntax is
$string ~~ \@array
从using the smart-match operator is dicey开始,一些不依赖于它的替代方法是使用grep
if (grep { $_ eq $string } @array) { ... }
和List::Util::first
或List::Util::any
use List::Util 'first';
if (first { $_ eq $string } @array) { ... }
use List::Util 'any';
if (any{ $_ eq $string } @array) { ... }