Hi All,

I have a string formatted like this:

my $mystring = 'var1=123::var2=abc456::var3=10.99::var4=def';

What I need to do is to be able to extract name=value. I cannot be sure
where in the list a any value will occur so to extract a value for 'var2'
from the above example would require matching either:

 '::var2=abc456::'

or
 'var2=abc456::'

or
 '::var2=abc456'

Can anyone suggest a regex to do this?

I've been trying things like:

( $valueforvar2 ) = $mystring =~ m/var2=(.+)[::]/;

but this only works if 'var2' is not last in the string. It also generqate a
warning as follows: "POSIX syntax [: :] belongs inside character classes in
regex; marked by <-- HERE in m/var2=(.+)[::] <-- HERE / at Untitled line...

Any suggestions appreciated.

Bill




_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to