use strict; use warnings; my $text = <<'TEXT'; Those APCs are APC 282, 376, 377 and 398. The APC assignments are also shown in attachment K1. In the Final Rule, we indicated that clinical characteristics and expected resource use. Procedures are sufficiently similar to those other procedures assigned to APC 282, 376, 377, and 398, and that we believe those APC assignments were appropriate. Specifically APCs 662 and APC 282. As shown in attachment K3 under option number 1, to be placed in APC 662. Our data analysis shows that combining services currently assigned to APC 662 would result in an APC median cost of about 302. The 6 CPT-Codes that would go into APC 662 are: CPT-Codes 0145T through 0150T. The two other cardiac CT codes, specifically 0144T and 0151T would be assigned to APC 282. The inclusion of the two codes into APC 282 would result in... TEXT my $rxExtract = qr {(?x) (?: (?<=APC) | (?<=APCs) | (?<=,) | (?<=and) ) \s(\d{3})(?:\D|\z) }; my @extracts = $text =~ m{$rxExtract}g; print qq{Match $_: $extracts[$_]\n} for 0 .. $#extracts;