$s = 'pre-stuffsome stuffpost-stuff';; print "$1 :: $2" while $s =~ s[<(\D+)>([^<]*?)][]gi;; EXHIBITING :: some stuff COMMA :: pre-stuffpost-stuff #### $s = 'pre-stuffsome <= stuffpost-stuff';; print "$1 :: $2" while $s =~ s[<(\D+)>([^<]*?)][]gi;; {zilch here}