Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 搜索、匹配和显示所有计数_Arrays_String_Perl_Printing_Count - Fatal编程技术网

Arrays 搜索、匹配和显示所有计数

Arrays 搜索、匹配和显示所有计数,arrays,string,perl,printing,count,Arrays,String,Perl,Printing,Count,我对perl非常熟悉,但我正在努力解决一些问题,一定是一年中的某个时候 我发出两个命令,一个命令将获取特定类的所有项,然后将所有这些项存储在一个数组中 @array = `get_class_command -class=type`; 然后,我发出另一个命令来获取类的属性 $foreach my $item(@items) { $item =~ s/^\s+|\s+$//g; system("get_property_command -type=property

我对perl非常熟悉,但我正在努力解决一些问题,一定是一年中的某个时候

我发出两个命令,一个命令将获取特定类的所有项,然后将所有这些项存储在一个数组中

    @array = `get_class_command -class=type`;
然后,我发出另一个命令来获取类的属性

    $foreach my $item(@items) {
    $item =~ s/^\s+|\s+$//g;
    system("get_property_command -type=property"); # I can also assign this to a value.
    }
所以上面只会给我一个所有属性的列表。例如:

    property_CA
    property_CE
    property_CR
    property_CA
    property_CA
    property_CA
    property_CR
    property_CA
    property_CA = 5
    property_CE = 1
    property_CR = 2
因此,我现在可以打印所有不同的类、所有类型和所有属性,也可以指定只需要特定项目的计数。通过定义它们。 然而,我似乎无法理解的是,如何在不必定义所需内容的情况下显示计数中的所有项目。所以我想通过命令,检查每个属性,显示一次名称,然后打印计数数。例如:

    property_CA
    property_CE
    property_CR
    property_CA
    property_CA
    property_CA
    property_CR
    property_CA
    property_CA = 5
    property_CE = 1
    property_CR = 2
如果我在脚本中定义要匹配的内容,我可以这样做,但我需要知道每个属性才能定义它


任何帮助都将不胜感激

使用哈希计算重复元素,$hash{$item}++
 foreach my $item ( @items ) {
    my $property = `command to get thingys`
    $count_of{$property}++;
 }


 foreach my $property ( keys %count_of ) {
    print "$property $count_of{$property}\n";
 }