in reply to Regular Expression on special character and alphanumeric values
You are trying to find '\w+\-\$\.\%' pattern with (\w+\-\$\.\%) group and it does not exist so $1 is undefined and u get an error. Try this.
my $string="{'totalResultsCount':71-24,'securityList':[{'cusip':'91%27 +9-6.H:Y8','issueDate':'2016-06-02T00:00:00','securityType':'Bill'}"; # Patterns # original (\w+\-\$\.\%) # matach any pattern with these limits ([\w\-\$\.\%\:]+) # anything but this ' ([^\']+) # exact pattern (\d{2}\%\d{3}\-\d\.[A-Z]\:[A-Z]\d) $string =~ /'cusip':'(\d{2}\%\d{3}\-\d\.[A-Z]\:[A-Z]\d)'/; if (defined $1) { print " first is : $1 \n\n"; } else { print " first is not defined\n\n"; }
Updated: added some regex in code.
|
|---|