What does \s* means?

what does the .\s* means in the following commad

class String
  def sentences
    gsub(/\n|\r/, ' ').split(/\.\s*/)
  end
end

···

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

\s* means occurrence of zero or more white spaces.

gsub(/\n|\r/, ' ').split(/\.\s*/) is basically first removing all the line feeds and carriage returns and then the sentence is split into an array whenever a dot followed by zero or more white spaces is encounterd.

Regards,
Raghav

···

-----Original Message-----
From: khanal02@gmail.com [mailto:khanal02@gmail.com]
Sent: Tuesday, December 15, 2009 2:27 PM
To: ruby-talk ML
Subject: what does \s* means?

what does the .\s* means in the following commad

class String
  def sentences
    gsub(/\n|\r/, ' ').split(/\.\s*/)
  end
end
--
Posted via http://www.ruby-forum.com/.

griffith Khana wrote:

what does the .\s* means in the following commad

it's actually '\.\s*' => match a '.' followed by zero or more spaces

read the regular-expression section for more details:

http://www.ruby-doc.org/docs/ProgrammingRuby/html/tut_stdtypes.html

···

class String
  def sentences
    gsub(/\n|\r/, ' ').split(/\.\s*/)
  end
end

--
Kind Regards,
Rajinder Yadav

http://DevMentor.org

Do Good! - Share Freely