It appears that you want to know if all the elements in one string are in the other.
Assumptions: the following strings will match:
- "cake,cake,patty", "cake,patty,cake"
- "bread,water", "water,bread"
The following strings won't match:
- "cake,cake,patty", "patty,cake"
- "brad,water", "water,bread"
# check_strings - takes two parameters, returns true if same
sub check_strings( $ $ )
{
# arguments
my ( $string1, $string2 ) = @_;
my @elements1 = sort split(',',$string1);
my @elements2 = sort split(',',$string2);
if ( scalar(@elements1) <=> scalar(@elements2) )
{
return( undef ); # differing number of elements
}
for ( my $i = 0; $i < scalar(@elements1); $i++ )
{
if ( $elements1[$i] cmp $elements2[$i] )
{
return( undef ); # element differs
}
}
return( 1 ); # elements are all the same
}