Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: Automatic Subsequent Indexing.

by muba (Priest)
on Jun 22, 2012 at 15:28 UTC ( #977862=note: print w/ replies, xml ) Need Help??


in reply to Automatic Subsequent Indexing.

Something like this, you mean?

use strict; use warnings; my $offset = 0; # Where are we in the string? my $string = do { # Grab the string. local $/; <DATA>; }; my $numResults = 0; while (1) { my $idxSummary = index($string, "SUMMARY", $offset); my $result = ""; if ($idxSummary > -1) { $offset = $idxSummary + length("SUMMARY"); my $idxDescription = index($string, "DESCRIPTION", $offset); if ($idxDescription == -1) { print "(Data malformed: missing DESCRIPTION line.)\n"; last; } my $length = $idxDescription - $offset; $result = substr($string, $offset, $length); $offset = $idxDescription + length("DESCRIPTION"); $result =~ s/^\s+|\s+$//g ; # Strip leading and trailing white +space, # includng newlines. $numResults++; } else { print "(All done. $numResults result(s) found.)\n"; last; } print " <$result>\n"; } __DATA__ This is bogus data SUMMARY Event 1 DESCRIPTION Lorem ipsum etc etc This is bogus data SUMMARY Event 2 DESCRIPTION Lorem ipsum This is bogus data SUMMARY The Third Event DESCRIPTION Lorem ipsum This is bogus data SUMMARY Event Number Four DESCRIPTION Lorem ipsum

It gives this output:

<Event 1> <Event 2> <The Third Event> <Event Number Four> (All done. 4 result(s) found.)

Update: Alternatively, if it's not really the indexes you care about, but only capturing those titles, how about this?

my @results = $string =~ m/SUMMARY\s*(.+?)\s*DESCRIPTION/g; print map { " <$_>\n"} @results;


Comment on Re: Automatic Subsequent Indexing.
Select or Download Code
Replies are listed 'Best First'.
Re^2: Automatic Subsequent Indexing.
by MiriamH (Novice) on Jun 22, 2012 at 16:07 UTC
    YOU ARE AMAZING!!! THANKYOU!!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://977862]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (10)
As of 2015-07-29 20:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (268 votes), past polls