Search code examples
rubystringwhitespace

Ruby how to remove a more than one space character?


Ruby Okay, I want to remove a more than one space character in a strings if there's any. What I mean is, let's say I have a text like this:

I want to     learn ruby more and more.

See there's a more than one space character after "to" and before "learn" either it a tab or just a several spaces. Now what I want is, how can I know if there's something like this in a text file, and I want to make it just one space per word or string. So it will become like this

I want to learn ruby more and more.

Can I use Gsub? or do I need to use other method? I tried Gsub, but can't figure out how to implement it the right way so it can produce the result I want. Hopefully I explained it clear. Any help is appreciated, thanks.


Solution

  • You can use gsub to replace one or more whitespace (regex / +/) to a single whitespace:

    'I want to     learn ruby more and more.'.gsub(/ +/, " ")
    #=> "I want to learn ruby more and more."