We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
Text info can be read from varied sources and is often unsuitable for direct processing or usage by core functions. This necessitates methods for post-processing and data-fixing. In this tutorial, we'll learn how to remove flanking whitespace and newline from strings.
String.chomp(separator=$/)
: Returns a new string with the given separator removed from the end of the string (if present). If $/ has not been changed from the default Ruby record separator, then chomp also removes carriage return characters (that is, it will remove \n, \r, and \r\n).
> "Hello World! \r\n".chomp
"Hello World! "
> "Hello World!".chomp("orld!")
"Hello W"
> "hello \n there".chomp
"hello \n there"
String.strip
- Returns a new string with the leading and trailing whitespace removed.
> " hello ".strip
"hello"
> "\tgoodbye\r\n".strip
"goodbye"
String.chop
- Returns a new string with the last character removed. Note that carriage returns (\n, \r\n) are treated as single character and, in the case they are not present, a character from the string will be removed.
> "string\n".chop
"string"
> "string".chop
"strin"
In this challenge, your task is to code a process_text
method, which takes
an array of strings as input and returns a single joined string with all
flanking whitespace and new lines removed. Each string has to be separated by a single space.
> process_text(["Hi, \n", " Are you having fun? "])
"Hi, Are you having fun?"