my @wanted = ( 'C', 'C++','.NET', ); my $str = '.net, .net; C# .NET Cobol .NET C++ .NET .NETER c# IT x.NET'; my %split_str; $split_str{ +uc }++ for split /[ ;,]+/, $str; say "$_: " . ( $split_str{$_} || 0 ) for @wanted;