Think I figured it out properly.

if ($_ =~ /^\$myquery/) { quotemeta($_); (undef, $line{myquery}) =
split(/=/, $_, 2); }

This gives me MYQUERY = "url=$url&email=$email&i_rank=yes";

If this is not the 'proper' way please let me know of a better way.

Thanks
zack


"Zachary Buckholz" <[EMAIL PROTECTED]> wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> I have a bunch of text files that follow the format
> variable = value <crlf>
>
> I am trying to read each file and insert it into SQL but before I can do
> that I need to parse
> the values into a hash.
>
> One of the fields has the URL which can contain & and = characters, so
after
> the first split I seem to miss the rest.
>
> I tried using the LIMIT feature of split which if I am reading it
correctly
> 'limits the amount of times it will split'.
>
> But I am not getting the desired results. See example
>
> TEXT FILE HAS THIS
> $method="GET";
> $engname="SurfGopher";
> $line="http://www.surfgopher.com/cgi-bin/submit.cgi";;
> $myquery="url=$url&email=$email&i_rank=yes";
>
> When I run the script and print the output I get this
> MYQUERY =
> value = www.surfgopher.com/cgi-bin/submit.cgi
> value = GET
> value = SurfGopher
>
> THIS IS THE LINE OF CODE USING SPLIT
> if ($_ =~ /^\$myquery/) { (undef, $line{myquery}) = split(/=/, $_, 1) }
>
> THIS IS THE LINE PRINTING THE OUTPUT IN QUESTION
> print "MYQUERY = $line{myquery}\n";
>
>
> I could just do a $line =~ s/\$myquery\=//;
> and be done with it, but I want to know why and how to use the LIMIT
> argument.
>
> Thanks
> zack
>
>
>



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to