Estou pesquisando um arquivo de texto de várias linhas e desejo corresponder a uma string de uma determinada palavra até a primeira correspondência de outra palavra:
start
word1
word1
word1
word1
end
word2
word2
word2
start
word3
word3
word3
end
Aqui está o que eu uso:grep -Pzo "(?s)start.*?end" file.txt
E corresponde a tudo na string de texto acima do começo ao fim, enquanto eu quero corresponder apenas até a primeira end
ocorrência, ou seja:
start
word1
word1
word1
word1
end
O que estou fazendo de errado?
De alguma forma, o quantificador não ganancioso ?
não está funcionando como eu esperava.
Obrigado pelo seu tempo e contribuições!