use warnings; use strict; my $str1 = q/It is a guide to action which ensures that the military always obey the commands of the party./; my $str2 = q/It is a guide to action that ensures that the military will forever heed Party commands is a guide./; my $n = 0; while ( $str1 =~ /(?=(\S+\s+\S+\s+\S+))/g ) { my $t1 = $1; while ( $str2 =~ /($t1)/g ) { print $1; $n++; } } print "No of matching is : $n";