ruby - 如何检测字符串中的一行是否只有行车?

标签 ruby

我有一个包含多行的字符串。我正在做的是检查每一行的特定特征,然后相应地处理它们。

一个特征是该行是否以 + 开头或 - .效果很好。

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

这是一个字符串的例子:

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

我有一些简单的检查来检测第一行和最后一行,看起来像这样 <% if line.start_with?("-") %> .

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

关键是该行是否仅包含行回车 \n .

编辑 1

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

最佳答案

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

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

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

关于ruby - 如何检测字符串中的一行是否只有行车?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42757894/

相关文章:

ruby - Cucumber:自动创建步骤文件?

ruby-on-rails - 查看当前可用的所有实例变量? ( ruby )

ruby-on-rails - 在 Rails 中下载 CSV 格式的单个记录

ruby - 是否可以覆盖 gemfile 进行本地开发?

ruby-on-rails - 在 Rails 模型中重新定义 gem 方法不起作用

ruby-on-rails - 为什么 `before_save` 在 Rails 4 中不起作用?

ruby-on-rails - 通过 CLI 的 rails 不工作

ruby - 使用 ruby​​ 将存储为有符号的无符号整数转换回原始值

ruby - 如何使用 Vim 从 do 跳转到 Ruby block 的末尾?

ruby-on-rails - Ruby On Rails 中的模块