http://qs1969.pair.com?node_id=460964


in reply to string comparison

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 }