如何检测字符串中的行是否只有行格式?

时间:2017-03-13 06:47:55

标签: ruby

我有一个包含多行的字符串。我正在做的是检查每一行的具体特征,然后相应地对其进行处理。

一个特征是该行以+-开头。这很好用。

另一个特征是,如果它只包含\n,但我不知道如何检查。

以下是字符串示例:

 "+        end\n",
 " \n",
 "-      # Specifies a many-to-many relationship with another class. This associates two classes via an\n",

我有一些简单的检查可以检测到第一个&amp;最后一行,看起来像<% if line.start_with?("-") %>

但不太确定如何查看该行是否只有(或多个)\n。请注意,其他行可以在该行中有\n,并且不应触发此条件(如第一行和最后一行)。

关键是如果该行仅包含行回车\n

修改1

请注意,我并不是要删除这些行。我只是在寻找正则表达式或者内置的ruby函数,它可以帮助我轻松识别符合上述条件的行。

1 个答案:

答案 0 :(得分:3)

您可能正在寻找String#strip,它会返回一个字符串副本,其中删除了前导和尾随空格:

def if_empty?(string)
  string.strip.empty?
end

if_empty?(" \n\n\n\n")
=> true