[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Read individual words from input?

Kerio Star

6/23/2007 9:06:00 AM

Hello folks,

I'm a semi-newbie C++ programmer and a total newbie Ruby programmer, so
please bear with my incompetence.

In C++, as I'm sure most of you know, it's possible to read individual
"words" into string variables by using the stream extraction operator.
This operator automatically excludes any and all whitespace from the
value it places into the string variable--that is, in the process of
reading the next piece of input, it skips any leading whitespace, and
stops upon encountering any following whitespace.

I'm struggling to find an equivalent to this in Ruby. I'd like to open a
text file and create from it an array each of whose values is an
individual "word," sans whitespace.

For example, given a string along the lines of " \n\tHello \n \t My
\t\t\t\nName \t\n Is \n John", how can I cleanly extract the strings
"Hello", "My", "Name", "Is", and "John"?

Again, sorry for asking such a stupid question--just trying to get a
handle on what seems to be an awesome language.

Thanks for any help,
Keriostar

--
Posted via http://www.ruby-....

2 Answers

dblack

6/23/2007 11:39:00 AM

0

Stefan Rusterholz

6/23/2007 12:06:00 PM

0

Kerio Star wrote:
> Hello folks,
>
> I'm a semi-newbie C++ programmer and a total newbie Ruby programmer, so
> please bear with my incompetence.
>
> In C++, as I'm sure most of you know, it's possible to read individual
> "words" into string variables by using the stream extraction operator.
> This operator automatically excludes any and all whitespace from the
> value it places into the string variable--that is, in the process of
> reading the next piece of input, it skips any leading whitespace, and
> stops upon encountering any following whitespace.
>
> I'm struggling to find an equivalent to this in Ruby. I'd like to open a
> text file and create from it an array each of whose values is an
> individual "word," sans whitespace.
>
> For example, given a string along the lines of " \n\tHello \n \t My
> \t\t\t\nName \t\n Is \n John", how can I cleanly extract the strings
> "Hello", "My", "Name", "Is", and "John"?
>
> Again, sorry for asking such a stupid question--just trying to get a
> handle on what seems to be an awesome language.
>
> Thanks for any help,
> Keriostar

Alternative if you want to avoid having interpunctuation and other stuff
in your words:
words = string.scan(/\w+/)

Regards
Stefan

--
Posted via http://www.ruby-....