The way I see it, you have two possible approaches.
You could construct an index where each word of interest is stored with the meta information that it is associated with.
open $srcFile, '<', 'source.txt' or die $! my $metaText = ""; while( my $line = <$srcFile> ) { if( $line =~ m/<text>(.*)<\/text>/ ) { # Replace the old meta text with the new one. $metaText = $1; } else { # Normal line. The old meta text applies. my @words = split /\s+/ $line; foreach my $word (@words) { store_in_index($metaText, $word); } } } close $srcFile;
In the example above, the store_in_index() function could anything from storage into a simple hash, to a relational database. It would depend on how much data, and how long you want to keep that data.
An alternative approach would be one where you read the file backwards. Firstly for the word the user is looking for, and then for the meta information line that it relates to. Off the top of my head, I am not sure how that would be done, but I am sure there are ways.
In reply to Re: Retrieving meta information from txt
by chrestomanci
in thread Retrieving meta information from txt
by fanticla
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |