use strict;
my $str = 'function pastEvents(username, params) { // 305
/** //
* @description Docs: http://www.songkick.com/developer/past-events-for-user //
* @param {string} username //
* @param {object} [params={}] //
* @param {number} [params.page=1] //
* @param {number} [params.per_page=50] - 50 is the max //
* @param {string} [params.order=\'asc\'] - \'asc\' or \'desc\' //
* @returns {Promise} //
*/ //
params = params ? params : {}; // 315
var url = _this.user.baseURL + username + \'/gigography.\' + _this.format + \'?apikey=\'; // 316
return _performRequest(url, params); // 318
}';
my $regex = qr/(?<=params\.).*?(?=\])/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