my $string = <>; my %substrings; $string =~ /(.+)(?{ $substrings{ $1 } = 1 })(*FAIL)/; #### / (\b\d+\b) .*? (\b\d+\b) (?{ $count += $1 > $2 }) (*FAIL) /x;