http://www.perlmonks.org?node_id=1008274


in reply to Regex help

my $str = '-plastic-Protector/dp/B00074658'; $str =~ s!.*/dp/!!; print "$str\n";

Replies are listed 'Best First'.
Re^2: Regex help
by perlnoobster (Sexton) on Dec 11, 2012 at 11:34 UTC
    Thank you everyone, all methods worked great :) I do have one slight niggle though, If the string contains the value AA1X32ALFC60JT8 then can this entire row including the /dp be excluded? e.g can -plastic-protector-AA1X32ALFC60JT8/dp/B00074658 be removed from the results? Thank you :)

      See the specific grep-map code in my other answer. For this requirement, you would simply add a negative match to the grep block:

      my @ids = grep { defined $_ && $_ !~ m{AA1X32ALFC60JT8} } map { match_ +id($_) } @lines_from_file;

      Bye
       PetaMem
          All Perl:   MT, NLP, NLU