use strict;
my $str = 'AppMessages - Dev
AppMessages - Master
AppMessages2 - Dev
AppMessages2 - Master
AWS - Octopus Release
BellHop - Dev
BellHop - Master
Bellhop Model - Dev
Bellhop Model - Master
Bellhop Model V2 - Dev
Bellhop Model V2 - Master
BellHop Services - Dev
BellHop Services - Master
BSG Log4j Extras - Dev
BSG Log4j Extras - Master
BSG Log4j Extras V2- Dev
BSG Log4j Extras V2- Master
BSG-BOM - Dev
BSG-BOM - Master
BSG-BOM2 - Dev
BSG-BOM2 - Master
Core Model - Dev
Core Model - Master
Core Model V2 - Master
Core Model V2- Dev
Core Services - Dev
Core Services - Master
Core Services V2 - Dev
Core Services V2 - Master
DealerLocator - Dev
EMS Services - Dev
EMS Services - Master
EMS Services V2 - Dev
EMS Services V2 - Master
Entitlements Services - Dev
Entitlements Services - Master
Entitlements SOAP API - Dev
Laipac Service - Master
Laipac Services - Dev
Laipac Services V2 - Dev
Laipac Services V2 - Master
LDK Services - Dev
LDK Services - Master
LDK Services V2 - Dev
LDK Services V2 - Master
LicenseAdmin - Dev
LicenseAdmin - Master
LiteFlexNetIntegration - Dev
LiteFlexNetIntegration - Master
LiteIntegration - Dev
LiteIntegration - Master
LiteLib - Dev
LiteLib - Master
Logviewer - Dev
Logviewer - Master
Messaging Services - Dev
Messaging Services - Master
OptionKeys - Dev
OptionKeys - Master
OptionKeysAPI - Dev
OptionKeysAPI - Master
Pools API - Dev
Pools API - Master
Pools Model - Dev
Pools Model - Master
Pools Model V2 - Dev
Pools Model V2 - Master
Pools Services - Dev
Pools Services - Master
Pools Services V2 - Dev
Pools Services V2 - Master
SubscriptionManager - Dev
SubscriptionManager - Master
SubscriptionManager2 - Dev
SubscriptionManager2 - Master
Tid Services - Dev
Tid Services - Master
TidHTTP - Dev
TidHTTP - Master
Upload templates to S3 - branch2Dev
Upload templates to S3 - Dev
Upload templates to S3 - Master
Upload templates to S3 - Test
VirtualWarehouse - Dev
VirtualWarehouse - Master
VirtualWarehouse Services - Dev
VirtualWarehouse Services - Master
VirtualWarehouse Services V2 - Dev
VirtualWarehouse Services V2 - Master
VW Axiom - Dev
VW Axiom - Master
VW Lite API - Dev
VW Lite API - Master
VW Remedy Events - Dev
VW Remedy Events - Master
VW Remedy Events Consumer - Dev
VW Remedy Events Consumer - Master
VW Remedy Events Lib - Dev
VW Remedy Events Lib - Master
VW Scheduled Tasks - Dev
VW Scheduled Tasks - Master
VW Sentinel - Dev
VW Sentinel - Master
VW Subscriptions - Dev
VW Subscriptions - Master
VW5 - Dev
VW5 - Master
WooCommerce API - Dev
WooCommerce API - Master
WooCommerce Model - Dev
WooCommerce Model - Master
WooCommerce Model V2 - Dev
WooCommerce Model V2 - Master
WooCommerce Services - Dev
WooCommerce Services - Master
WooCommerce Services V2 - Dev
';
my $regex = qr/^([[:alpha:]]+\s)+((V2)\s-\s).*$/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