Thanks Athanasius, this completes the task set forth in this thread. I have to confess, however, that I'm having trouble seeing why my attempt to trim it further does not alter the ultimate string:
C:\cygwin64\home\Fred\pages2\list>perl scraper4.pl 38. Don't live your fears, live your dreams. 38. Don't live your fears, live your dreams. C:\cygwin64\home\Fred\pages2\list>type scraper4.pl #! perl use strict; use warnings; use open ':std', OUT => ':utf8'; use HTML::TreeBuilder 5 -weak; my $site = 'http://motivationgrid.com/50-inspirational-quotes-to-live- +by/'; my $tree = HTML::TreeBuilder->new_from_url($site); my @quotes; for ($tree->look_down(_tag => 'p')) { if ((my $t = $_->as_text) =~ m{ ^ \d+ \. \s+ }x) { $t =~ s{ \x{2019} }{'}gx; $t =~ s{ \xA0 }{ }gx; $t =~ s{ \x{2013} }{--}gx; push @quotes, $t; } } my $randomelement = $quotes[rand @quotes]; print "$randomelement\n"; $randomelement =~ s/^ \d+ \. \s+//; print "$randomelement\n";
Otherwise, I'm really pleased.
In reply to Re^6: regex to get random quote
by Aldebaran
in thread regex to get random quote
by Aldebaran
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |