Есть ли опция grep/sed, которая позволит мне сопоставить шаблон после сопоставления другого шаблона? Например: Входной файл (foo
s являются переменными модели, начиная с 0
смешанных со случайными числами предшествуют #
спереди): (., Например, foo2
)Grepping второй шаблон после сопоставления первого шаблона
0foo1
0foo2
0foo3
\#89888
0foo4
0foo5
\#98980
0foo6
Поэтому, как только я пытаюсь найти переменную шаблона, я также хотите сопоставить другой шаблон (например, #number
) из этого номера строки рисунка, в данном случае #89888
.
Поэтому выход для переменной foo2
должен быть:
foo2 #89888
Для переменной foo5
:
foo5 #98980
foo
ы состоит из каждого символа, в том числе, которые могут быть рассмотрены метасимволами.
Я пробовал основной скрипт соответствия регулярному выражению с помощью tcl, который сначала будет искать foo*
, а затем будет искать следующий немедленный #
, но так как я работаю с очень большим файлом, для завершения потребуется несколько дней. Любая помощь приветствуется.
Не могли бы вы использовать [pcregrep] (http://stackoverflow.com/tags/pcregrep/info), который имеет многострочную поддержку? – Biffen