Многострочный поиск по регулярным выражениям с помощью ag

#regex #ag

#регулярное выражение #ag

Вопрос:

Я хотел бы выполнить поиск текста в определенном многострочном диапазоне в файле с помощью regex с помощью ag (the_silver_searcher). Но шаблон регулярных выражений не работает.

Следующий шаблон регулярных выражений работает хорошо.

ag --multiline -G "^.*.(md|txt)$" -C 1 -S "foo(n|.)*baz" ./dev_note.md

(вывод)

 40-
41:foo
42:bar
43:baz
44-
  

Но следование шаблону регулярных выражений ничего не выведет.(нет совпадений)

ag --multiline -G "^.*.(md|txt)$" -C 1 -S "(?=(.|n)*(foo))(?=(.|n)*(baz))" ./dev_note.md

Также я пытался: ag --multiline -G "^.*.(md|txt)$" -C 1 -S "(?=(.|n)*(foo))(.|n)*(?=(.|n)*(baz))" ./dev_note.md

Комментарии:

1. Есть ли пример исходного файла?

2. Полный список dev_note.md файла находится здесь: gist.github.com /…

3. Итак, каких результатов вы ожидаете от двух нижних шаблонов? Просто для ясности.