Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何检测字符串中的一行是否只有行回车?_Ruby - Fatal编程技术网

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

Ruby 如何检测字符串中的一行是否只有行回车?,ruby,Ruby,我有一个有多行的字符串。我所做的是检查每一行的具体特征,然后相应地处理它们 一个特征是如果行以+或-开头。那很好用 另一个特性是如果它只包含一个\n,但我不确定如何检查它 以下是字符串的示例: "+ end\n", " \n", "- # Specifies a many-to-many relationship with another class. This associates two classes via an\n", 我有一些简单的检查来检测第一行和最

我有一个有多行的字符串。我所做的是检查每一行的具体特征,然后相应地处理它们

一个特征是如果行以
+
-
开头。那很好用

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

以下是字符串的示例:

 "+        end\n",
 " \n",
 "-      # Specifies a many-to-many relationship with another class. This associates two classes via an\n",
我有一些简单的检查来检测第一行和最后一行,看起来像这样

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

关键是,如果行只包含行回车符
\n

编辑1


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

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

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

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

不…我正在寻找一个正则表达式或其他匹配工具,可以帮助我识别只有
\n\n\n
的字符串。我不想剥掉它们。我只想识别它们。您可以通过检查
strip
后的字符串是否为空来识别。顺便说一句,您的实例不仅有“\n”,而且
strip
可以处理这个问题。实际上您是对的……我的错。您使用的
strip.empty?
有效。天才。多谢孟!我还有一个字符串类型我正在尝试检测。你介意也看看那个吗?我将创建一个新问题,并在评论中发布链接,酷?当然,没有问题。