Can I Add quotes to values in a array? or include quotes..

R

Richard Sandoval

Please advise on my situation.

I have something like this


A Yaml file that contains


Application:
- App1
- App2


When I puts that yaml file for that application field, I get App1,App2.
How can I add quotes to each application. I'd like my output to be
"App1,App2" which includes the quotes in the output

I was thinking maybe through the use of gsub but I'm still new to ruby.
Could someone provide some aid?
 
N

Nikita Baksalyar

Hello,

It's simple:

require "yaml"

yaml = YAML::load("Application:\n - App1\n - App2")

puts '"' + yaml['Application'].join(', ') + '"'

That's it. I hope it'll help! :)
 
7

7stud --

Richard Sandoval wrote in post #995007:
When I puts that yaml file for that application field, I get App1,App2.
How can I add quotes to each application. I'd like my output to be
"App1,App2" which includes the quotes in the output

In Ruby, two of the String constructors are ' ' and " ". So if you
create a string like this:

str = 'hello'

and write:

puts str

then the output will be:

hello

Now, what if you want str to start with a dash and end with a dash? How
would you do that? Like this:

str = '-hello-'
puts str

and the output will be:

-hello-

Similarly, if you want the string to start with a double quote and end
with a double quote, then include a double quote before the 'h' and
after the 'o':

str = '"hello"'
puts str

and the output will be:

"hello"

But what if you try:

str = ""hello""
puts str

ruby first sees this:

str = ""

which sets str to a blank string. Then the rest of the line confuses
ruby, so ruby stops everything and gives you an error.

Sometimes mixing single quotes and double quotes gets confusing, so ruby
also provides two other string constructors: %q and %Q. The lower case
'q' is the same as single quotes, and the uppercase 'Q' is the same as
double quotes:

str = %q{"hello \n world"}
puts str

--output:--
"hello \n world"


str = %Q{"hello \n world"}
puts str

--output:--
"hello
world"
 
7

7stud --

Note that you can use any delimiter with %q and %Q: {}, [], !!, so you
can use a delimiter that makes your code clear.
 
A

Alexander McMillan

=20
Date: Wed=2C 27 Apr 2011 02:26:50 +0900
From: (e-mail address removed)
Subject: Re: Can I Add quotes to values in a array? or include quotes..
To: (e-mail address removed)
=20
Richard Sandoval wrote in post #995007:
=20
Use the escape slashes:
str =3D "\"Hello\""
put str =
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,968
Messages
2,570,154
Members
46,702
Latest member
LukasConde

Latest Threads

Top