code_junkie

How can I extract <%doc> content from Mason?

Nov 13th, 2011
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.46 KB | None | 0 0
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4.  
  5. use Text::Balanced qw( extract_multiple extract_tagged );
  6.  
  7. my $file = 'test.mason.txt';
  8. my $contents;
  9. {
  10. local $/;
  11. open my $fh, $file
  12. or die "Unable to open $file for reading, $!n";
  13. $contents = <$fh>;
  14. close $fh;
  15. }
  16.  
  17. my @extracted = extract_multiple( $contents, [ sub { extract_tagged( $_[0], '<%doc>', '</%doc>', '.*?(?=<%doc>)'); } ], undef, 1 );
  18.  
  19. s!</?%doc>!!g for @extracted;
  20.  
  21. print "@extractedn";
Add Comment
Please, Sign In to add comment