exemplo 1
...
<button id="catId" text="Category"/>
<field id="date" text="30.01.2018"/>
<checkbox id="AddToCart" text="true"/>
<checkbox id="Terms" text="false"/>
<button type="back" text="back"/>
....
exemplo 2
....
<button id="catId" text="Category"/>
<checkbox id="AddToCart" text="true"/>
<checkbox id="Terms" text="false"/>
<field id="date" text="30.01.2018"/>
<button type="back" text="back"/>
....
exemplo 3
....
<button id="catId" text="Category"/>
<checkbox id="AddToCart" text="true"/>
<field id="date" text="30.01.2018"/>
<checkbox id="Terms" text="false"/>
<button type="back" text="back"/>
...
Estou lutando para encontrar uma sintaxe correta para o Eclipse reg Ex Search / Replace para substituir <button type="back" text="back"/>
por <button type="submit" text="submit"/>
se houver um elemento "data" E "AddToCart" em 7 linhas antes do tipo de botão="voltar"
O problema é que a ordem dos nós não é consistente e algumas linhas em branco podem aparecer
eu tentei com
(.*catId*\r\n|.*date*\r\n|.*AddToCart.*\r\n|.*Terms.*\r\n.*<button type=)"back" text="back"
substitua por
$1"submit" text="submit"
Mas é claramente uma má lógica
Obrigado