$string = "I have 5 apples, 6 oranges, and 8 limes."; #Match the oranges only if they are more than the apples #and fewer than the limes. $string =~ m/(\d+)\sapples.*(\d+)\soranges.*(\d+)\slimes(?{if (($1<$2) && ($2<$3))})/g;