in reply to Cleaning Regexp
You might want to check out URI::Find. That way, you can use it to search your text for links, then grep the resulting list of valid URLs for the eid= part, printing out any that match.
#!/usr/bin/perl use strict; use warnings; our $textfile = "rfl.txt"; our ($text, @urls, @eidurls, $finder); use URI::Find; # Create the finder object with a callback to add # URLs to our list. Note that URI::Find expects # the callback to return the (possibly modified) # URL to be reinserted into the text (hence the # trailing shift). $finder = URI::Find->new( sub { push @urls, $_[0]; shift} ); # Read the file into $text, using "slurp mode" # (ie, the whole file is read in at # once instead of a line at a time) { open my $textfh, " $textfile" or die "Can't open file: $!\n"; local $/; # slurp mode $text = <$textfh>; close $textfh; } $finder->find(\$text); # Find 'em. They'll be in @urls now. @eidurls = grep /eid=/, @urls; # Find the ones we're interested in. print "The URLs are:\n"; print " $_\n" for @eidurls[1..$#eidurls]; # skip the first one
bbfu
Seasons don't fear The Reaper.
Nor do the wind, the sun, and the rain.
We can be like they are.
|
|---|