use strict;
my $str = 'CHOC_METRICS_2020-06-16.csv
Claims_PGSEO_20200110.txt
Claims_Agilon_20200110.txt
COPC_PE20190701_REHCF.TXT
Member_Agilon_PGSEO_Current_QualityRA_History_20200116.txt
Member_Agilon_PGSEO_Current_QualityRA_20200215.txt
Member_Agilon_PGSEO_Locked_Financial_20200115.txt
Member_Agilon_PGSEO_Locked_Financial_History_20200116.txt
Claims_PGSEO_History_20200116.txt
Member_Agilon_Current_QualityRA_20200215.txt
Member_Agilon_Locked_Financial_20191215.txt
COPC_ME_AETACOE6_201912_20200127.txt
SGPPN_PE20190701_REHCF.TXT
SGPPN_PE20200101_RECLMEXP.TXT
SGAGAKRN_PE20200301_RECLMEXP.TXT
PCMS_Inpatient_Admission_Patients_20190802100552.csv
PCMS_Inpatient_Admission_Patients_20190821154559.csv
Humana Dayton Census - Authorizations 4.30.20 Authorizations.csv
Humana Dayton Census - Authorizations 5.11.20.csv
Humana Dayton Census - Authorizations 4.30.20 Admits Discharges.csv
2020_05_04_Census.txt
2020_05_03_Discharges_Rolling7Days.txt
2020_05_04_Census.txt
2020_05_04_Discharges_Rolling7Days.txt
2019_12_21_Discharges_Rolling7Days.txt
2019_12_21_Census.txt
CHOC_RT_OutreachAttempt_20200502.csv
CHOC_RT_OutreachAttempt_20200509.csv
SGPPN_PE20200101_REMBX.TXT
PriMed_Phy_MAPPO_claim_det_02132020.txt
PriMed_Phy_MAPPO_claim_header_02132020.txt
PriMed_Phy_MAPPO_claim_header_proc_02132020.txt
PriMed_Phy_MAPPO_CLM_DIAG_02132020.txt
PriMed_Phy_MAPPO_member_02132020.txt
PriMed_Phy_MAPPO_member_eligibility_02132020.txt
OHCore_Care_Select_member_eligibility_01232020.txt
OHCore_Care_Select_member_eligibility_04152019.txt
OHCore_Care_Select_claim_det_07152019.txt
OHCore_Care_Select_claim_det_06182018.txt
OHCore_Care_Select_claim_det_01232020.txt
Pioneer_Phy_MAPPO_claim_det_02132020.txt
Pioneer_Phy_MAPPO_claim_header_02132020.txt
Pioneer_Phy_MAPPO_claim_header_proc_02132020.txt
Pioneer_Phy_MAPPO_CLM_DIAG_02132020.txt
Pioneer_Phy_MAPPO_member_02132020.txt
Pioneer_Phy_MAPPO_member_eligibility_02132020.txt
Physicians_Grp_Sohio_MAPPO_claim_det_02132020.txt
Physicians_Grp_Sohio_MAPPO_claim_header_02132020.txt
Physicians_Grp_Sohio_MAPPO_claim_header_proc_02132020.txt
Physicians_Grp_Sohio_MAPPO_CLM_DIAG_02132020.txt
Physicians_Grp_Sohio_MAPPO_member_02132020.txt
Physicians_Grp_Sohio_MAPPO_member_eligibility_02132020.txt
Central_Ohio_PC_MAPPO_claim_det_02132020.txt
Central_Ohio_PC_MAPPO_claim_header_02132020.txt
Central_Ohio_PC_MAPPO_CLM_DIAG_02132020.txt
Central_Ohio_PC_MAPPO_member_02132020.txt
Central_Ohio_PC_MAPPO_member_eligibility_02132020.txt
Central_Ohio_PC_MAPPO_claim_header_proc_02132020.txt
CORECARESELECT1OH_ENC_837P_20190927_529128
Copy of Pioneer_DailyAuth_SummaCare_20191227.csv
Copy of Pioneer_DailyAuth_SummaCare_20200329.csv
Copy of Pioneer_DailyAuth_SummaCare_20200414.csv
Copy of Pioneer_DailyAuth_SummaCare_20200402.csv
Pioneer_DailyAuth_SummaCare_20191227.csv
Pioneer_DailyAuth_SummaCare_20200329.csv
MG 11.22.19 HospitalListReport.csv
Humana COPC Census - Authorizations 3.26.20 Admits Discharges.csv
Humana COPC Census - Authorizations 13.6.20 Admits Discharges.csv
Humana COPC Census - Authorizations 3.26.20 Authorizations.csv
Humana COPC Census - Authorizations 11.01.20 Authorizations.csv
Humana COPC Census - Authorizations 2.2.20 Authorizations.csv
Humana Census - Admits Discharges 20200420.csv
^0420 file bad
Humana Census - Admits Discharges 20200416.csv
Humana Census - Authorizations 20200416.csv';
my $regex = qr/^(?i)CHOC.*[.csv]$/mp;
if ( $str =~ /$regex/g ) {
print "Whole match is ${^MATCH} and its start/end positions can be obtained via \$-[0] and \$+[0]\n";
# print "Capture Group 1 is $1 and its start/end positions can be obtained via \$-[1] and \$+[1]\n";
# print "Capture Group 2 is $2 ... and so on\n";
}
# ${^POSTMATCH} and ${^PREMATCH} are also available with the use of '/p'
# Named capture groups can be called via $+{name}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html