如何使用ruby在两个新行上分割文本

paw*_*orr 1 ruby ruby-on-rails

在我的RoR应用程序中,我有一个文本区域,并希望将其内容拆分为单独的段落。文本具有以下格式:

Berlin.
Rome.
London.

Paris.
Warsaw.
New York City.
Run Code Online (Sandbox Code Playgroud)

显示时,我希望将其格式化为以下段落:

<p>Berlin. Rome. London.</p>
<p>Paris. Warsaw. New York City.</p>
Run Code Online (Sandbox Code Playgroud)

如何实现呢?我想我需要使用split方法,但是如何定位两个新行?

Ash*_*ini 6

当您与文本字段值分割时,text.split("\n\n")您将在数组中获得分割值,即输出类似于 ["Berlin.\nRome.\nLondon.", "Paris.\nWarsaw.\nNew York City."]。以以下方式打印值

'<p>Berlin. Rome. London.</p>
<p>Paris. Warsaw. New York City.</p>'
Run Code Online (Sandbox Code Playgroud)

需要"\n"从数组元素中删除,并" "使用gsub ruby​​方法添加。

<% text.split("\n\n").each do |paragraph| %>
 <p>
    <%= paragraph.gsub("\n"," ") %>
  </p>
<% end %>
Run Code Online (Sandbox Code Playgroud)

您还可以参考如何从Ruby字符串中删除字符串“ \ n”?