array question

R

Ruby Mokx

Hey everyone I'm a 14 year-old beginner in ruby and I discovered that I
need to separate strings into arrays for a program that I am making.
For example, if I have the string 'abc', I'll want to make it into the
array ['a', 'b', 'c']. Is there any way to do this? I am using version
1.8.6, by the way. All help is welcome.

Thanks in advance!
 
D

David A. Black

Hi --

Hey everyone I'm a 14 year-old beginner in ruby and I discovered that I
Welcome!

need to separate strings into arrays for a program that I am making.
For example, if I have the string 'abc', I'll want to make it into the
array ['a', 'b', 'c']. Is there any way to do this? I am using version
1.8.6, by the way. All help is welcome.

The method you want is String#split:

'abc'.split(//) # => ['a', 'b', 'c']

Split takes a regular expression or string as its argument, and splits
on that pattern. The empty regular expression causes it to split the
string into individual characters.

There are some more bells and whistles to it but that's the basic
idea.


David

--
The Ruby training with D. Black, G. Brown, J.McAnally
Compleat Jan 22-23, 2010, Tampa, FL
Rubyist http://www.thecompleatrubyist.com

David A. Black/Ruby Power and Light, LLC (http://www.rubypal.com)
 
P

Phrogz

need to separate strings into arrays for a program that I am making.
For example, if I have the string 'abc', I'll want to make it into the
array ['a', 'b', 'c'].  Is there any way to do this?  I am using version
1.8.6, by the way.  All help is welcome.

The method you want is String#split:

   'abc'.split(//)  # => ['a', 'b', 'c']


Here are two other techniques, just for fun:

all_characters = "abc".scan(/./)

all_characters=[]
"abc".each_char{ |x| all_characters.push(x) }
 
B

Bertram Scharpf

Hi,

Am Dienstag, 27. Okt 2009, 09:38:30 +0900 schrieb Ruby Mokx:
Hey everyone I'm a 14 year-old beginner in ruby and I discovered that I
need to separate strings into arrays for a program that I am making.
For example, if I have the string 'abc', I'll want to make it into the
array ['a', 'b', 'c']. Is there any way to do this? I am using version
1.8.6, by the way. All help is welcome.

Hey Mokx, the answer has been given. Let me start to disturb you.
There's a difference between

str.scan /./ # and
str.scan /./u

Your enthusiasm ist delighting me but the real world is rough.
Cheer up.

Bertram
 

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
474,166
Messages
2,570,902
Members
47,442
Latest member
KevinLocki

Latest Threads

Top