in reply to Re: Re: Re: Re: Auto linking to words in a text file
in thread Auto linking to words in a text file

Basic code (assuming the file you're reading consists *ONLY* of word/link pairs on a single line ... I'd suggest separating them with something other than a pipe, too, but whatever.)

# assuming the link data file is open my $keywords; while (<LINKDATA>) { # regex matches (everything to the left of the pipe), puts # it in $1, then (everything to the right of the pipe) # and puts that in $2 /([^|]+)\|(.*)/; $keywords{$1} = $2; }

This should be reasonably efficient in terms of speed and not so bad on memory if your list of words isn't too large.
HTH,

Philosophy can be made out of anything. Or less -- Jerry A. Fodor

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: Re: Auto linking to words in a text file
by turnstep (Parson) on Dec 02, 2000 at 05:23 UTC

    The code:

    /([^|]+)\|(.*)/; $keywords{$1} = $2;
    should really be:
    /([^|])\|(.*)/ and $keywords{$1}=$2;
    - never use $1 and friends unless you actually get a match, or your results may be unpredictable.
Re: Re: Re: Re: Re: Re: Auto linking to words in a text file
by belize (Deacon) on Dec 02, 2000 at 00:17 UTC
    Thanks arturo, I'll work through the code and give it a try.

    Appreciate your input.