in reply to Matching text between tags
Your initial string suffers from interpolation. Changing to single quotes, using the /s modifier and testing gives us the desired results:
#!/usr/bin/perl use strict; use warnings; use Test::More; my $lines = 'Aliquam vitae ipsum id felis finibus congue. Ut molestie +scelerisque purus, sit amet rhoncus leo aliquet ac. In eu lobortis quam. Maecenas auctor + semper enim, ut convallis sapien dictum eu. Sed arcu ex, ornare et porttitor vitae +, interdum a mi. Mauris rutrum luctus rhoncus. Quisque velit quam, convallis vel est a +t, tincidunt accumsan velit. Fusce ut <u>metus ut which may either exceed $1,000.00 or OK. G. LAT, semper nunc, in dictum magna.</u> Aliquam ac vestibulum dolor. Praesent in magna nisi. Cras nec viverra + ligula. Suspendisse efficitur imperdiet eros, <u>sed rhoncus sapien euismod cursus. Vesti +bulum a posuere</u> elit, eget tristique eros. Etiam et lectus venenatis, aliquet dui vitae, po +suere lectus.'; my ($first, $second) = ($lines =~ /<u>(.*?)<\/u>/sg); is ($first, 'metus ut which may either exceed $1,000.00 or OK. G. LAT, semper nunc, in dictum magna.', 'First match'); is ($second, 'sed rhoncus sapien euismod cursus. Vestibulum a posuere' +, 'Second match'); done_testing ();
$ perl 1160410.pl ok 1 - First match ok 2 - Second match 1..2
If that doesn't fix your problem you'll need to be a lot more specific about how it fails for you.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Matching text between tags
by Anonymous Monk on Apr 14, 2016 at 16:26 UTC | |
by AnomalousMonk (Archbishop) on Apr 14, 2016 at 16:58 UTC | |
by LanX (Saint) on Apr 14, 2016 at 16:55 UTC | |
by Anonymous Monk on Apr 14, 2016 at 17:18 UTC |