在ruby正则表达式中匹配换行符`\n`

Art*_*rth 8 ruby regex

我试图理解为什么以下返回false:(**我应该把"输出0"**)

puts "a\nb" =~ Regexp.new(Regexp.escape("a\nb"), Regexp::MULTILINE | Regexp::EXTENDED)
Run Code Online (Sandbox Code Playgroud)

也许有人可以解释.

我试图从一个匹配String的多行字符串生成一个Regexp.

提前致谢

Bri*_*tas 12

puts永远都会回来nil.

您的代码应该可以正常工作,尽管很长.=~返回匹配的位置,即0.

你也可以使用:

"a\nb" =~ /a\sb/m
Run Code Online (Sandbox Code Playgroud)

要么

"a\nb" =~ /a\nb/m
Run Code Online (Sandbox Code Playgroud)

注意:m此示例中不需要该选项,但演示了如何使用它Regexp.new.

  • @Arth你可以这样做:`!!("a \nb"=〜/ a\sb/m)` (2认同)