尝试在找到正则表达式之前捕获两行

时间:2016-01-18 21:29:13

标签: regex

我试图找出如何捕获正则表达式以及之前的两行。

示例:

RUBY_VERSION: 2.2.3
def foo; "in Main";end
foo method response: in Main
Object.private_instance_methods:[:foo]
Trying to call Object.new.foo
/scripts/test.rb:7:in `<main>': private method `foo' called for #<Object:0x593808> (NoMethodError)

我的正则表达式是邮政编码Santa Claus North Pole, North Pole H0H 0H0

我希望能够使用正则表达式表达式捕获该结果和前两行。

有没有人有任何想法?

提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容:

(.*\n.*\n[a-z]\d[a-z]\s\d[a-z]\d)

Example Here

  • .*\n.*\n将匹配前两行中的所有字符。
  • [a-z]\d[a-z]\s\d[a-z]\d - 我在每个字符类后删除了{1}(因为默认情况下只匹配一个,这是多余的)。

您可能还需要添加不区分大小写的i标记,因为[a-z]只会匹配小写字符。否则应将其替换为[A-Za-z]以捕获邮政编码中的大写字母。