Удалите несколько строк и новые строки внутри String

Предположим, что у нас есть строка вроде этого:

Hello, my\n       name is Michael.

Как я могу удалить эту новую строку и поместить эти пробелы после этого в одну внутри строки, чтобы получить это?

Hello, my name is Michael.

Ответ 2

Чтобы проиллюстрировать Rubys, построенный в сжатии:

string.gsub("\n", ' ').squeeze(' ')

Ответ 3

Самый простой способ -

s = "Hello, my\n       name is Michael."
s.split.join(' ') #=> "Hello, my name is Michael."

Ответ 4

это регулярное выражение заменит экземпляр 1 или более белых пробелов на 1 пробел, p.s \s заменит все символы пробела, которые включают \s\t\r\n\f:

a_string.gsub!(/\s+/, ' ')

Аналогично для возврата только каретки

str.gsub!(/\n/, " ")

Сначала замените все \n на пробел, затем используйте удаление многократного пробела.

Ответ 5

my_string = "Hello, my\n       name is Michael."
my_string = my_string.gsub( /\s+/, " " )

Ответ 6

Используйте String # gsub:

s = "Hello, my\n       name is Michael."
s.gsub(/\s+/, " ")

Ответ 7

Попробуйте следующее:

s = "Hello, my\n       name is Michael."
s.gsub(/\n\s+/, " ")

Ответ 8

Use squish
currency = " XCD"
str = currency.squish
 str = "XCD" #=> "XCD"