Simple question


#1

hello

I have a string like this

string = “hello -a apple -b butterfly -c cat -d dophin”

i would like to parse the string based on some reg exp so that i can
store it in a variable like so.

valuea = “apple”
valueb = “butterfly”
valuec = “cat”
valued = “dophin”

Could someone help me out.


#2

anitawa wrote:

valueb = “butterfly”
valuec = “cat”
valued = “dophin”

Could someone help me out.

Are you parsing a command line? If so, you might want to consider
http://www.ruby-doc.org/stdlib/libdoc/optparse/rdoc/index.html

cheers,
mick


#3

or a gem called ‘OptionParser’. It’s like optparse, only, I find, a
lot simpler.

On Jul 19, 2007, at 10:19 PM, Michael H. wrote:

Could someone help me out.

Are you parsing a command line? If so, you might want to consider
http://www.ruby-doc.org/stdlib/libdoc/optparse/rdoc/index.html

cheers,
mick

---------------------------------------------------------------|
~Ari
“I don’t suffer from insanity. I enjoy every minute of it” --1337est
man alive


#4

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

anitawa wrote:

valueb = “butterfly”
valuec = “cat”
valued = “dophin”

Here you go, but I just had to make one change. Instead of having
variables
valuea, valueb, valuec…, I put them in a hash called value. Is it
absolutely
necessary to have them as you posted?

string.split(/\s-/).each do |v|
v = v.split(/\s/)
value[ v[0] ] = v[1] if v.size == 2
end

So you would have

value[“a”] = “apple”
value[“b”] = “butterfly”
etc…


Travis W.

“Programming in Java is like dealing with your mom –
it’s kind, forgiving, and gently chastising.
Programming in C++ is like dealing with a disgruntled
girlfriend – it’s cold, unforgiving, and doesn’t tell
you what you’ve done wrong.”
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGoBzPWvapaOIz2YYRAq0/AJ91/fhAjvzUTNPdorleu5KM39yFIACeI33D
up+jMT1DWbZA/pjE63ihgZk=
=EHig
-----END PGP SIGNATURE-----