----- Original Message -----
From: "pn" <[EMAIL PROTECTED]>
To: "prl_list" <[EMAIL PROTECTED]>
Sent: Friday, August 16, 2002 7:24 PM
Subject: Re: Help with regular expressions
>
>
> I ran into the following Regular expressions, but am
> unable to quite understand what each of these mean:
>
> Any help would be greatly appreciated, as I am fairly
> new to PERL.
>
> 1)
>
>$abc=~/my_sdk\s+\-name\s+\{(\S+)\}\s+\-pid\s+(\S+)\s+\-wfm\s+\{\s*(\S+)\s+(\S+)\s*\}.*/gi)
$abc=~ / # So start the matching...
my_sdk # require these words, (ie. 'my_sdk')
\s+ # some words(more than 1) are : \n , \t , \r, or \f
\-name # require these words (ie. '-name')
\s+ # some words(more than 1) are : \n , \t , \r, or \f
\{ # with a '{'
(\S+) # some words(more than 1) are not \n \t \r or \f .
# these words will be captured as $1 also.
\} # with a '}'
\s+ # same as mensioned
\-pid # with '-pid'
\s+ # same as mensioned
(\S+) # same as mensioned but these words will be captured as $2.
\s+ # same as mensioned
\-wfm # with '-wfm'
\s+ # same as mensioned
\{ # with '{'
\s* # 1 word, or no word match to \n \r \t \f
(\S+) # same as mensioned, but value will capture to $3
\s+ # same as mensioned
(\S+) # same as mensioned... $4
\s* # same as mensioned
\} # with a '}'
..* # anything or none
/ # end this matching
g # matching is not doing once, but(I don't know how to explain)
# Anyway, that mean after found the first match, the matching
# will still continue.
i # case non sensitive, (ie a eq A, B eq b and so on )
) # This is syntax error =)
>
>
> 2)
>
$line=~/(\S+)\s+(\S+)\s+(\S+)\s+\S+\s+\S+\s+(\(\((.*)\)|no_value)\s+(\(\((.*)\)|no_value)\s+(\(\((.*)\)|no_value)\s+(\(\
((.*)\)|no_value)\s+\{\s*(\S+)\s*\}$/)
Mostly same as above, but | is means 'or', ie, match the before pattern|this are
accept.
the () will carry matched pattern in order by $1, $2, $3....
the last $ means end of line.
Rgds,
Connie
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]