in reply to Re: Accessing data present in a text file with references...
in thread Accessing data present in a text file with references...

cool... thanks man....
could u explain this part a bit....
my ($key, $value) = split /\s*=\s*/; if (m/["']([^'"]+)/) {
thanks for this and the link man
++ when does one use data::dumper?

Replies are listed 'Best First'.
Re^3: Accessing data present in a text file with references...
by CountZero (Bishop) on Feb 14, 2010 at 21:12 UTC
    The while loop puts each line in $_ which is some sort of universal default variable.

    The split splits the string in $_ on the following pattern: "zero or more spaces; equal sign; zero or more spaces" and puts the results of this splitting in the variables $key and $value (actually $value is not used in my script, but I left it in otherwise you might wonder where the second part of the split went to).

    m/["']([^'"]+)/ is a regular expression match and it (also) does some pattern matching, again on the contents of the $_ variable. It tries to match the following pattern: "one single or one double quote; one or more times anything but a single or double quote". The "one or more times anything but a single or double quote" pattern is captured (see the parentheses round the [^'"]?) into the $1 variable. If the match succeeds, we store the contents of $1 into the %data hash keyed by $key.

    CountZero

    A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James