expressão regular
Boa tarde Galera,
Estou há alguns dias batendo cabeça com uma bendita expressão regular, como não sou muito bom com regex, será que alguém poderia me dar uma luz?
Vou explicar o cenário, estou importando um arquivo .docx no sistema, este arquivo posteriormente é transformado em pdf para impressões automáticas (tipo mala direta), até aí tudo funciona muito bem.
Neste arquivo podem ser utilizadas algumas variáveis, que defini como @NomeDaVariavel@, estas serão substituídas por dados do banco de dados.
É aí que está o problema, se eu abro o word (ou writer) digito algumas variáveis, mando salvar e testo funciona tudo certinho. Porém se eu importo um arquivo que já existia com alguma formatação, ele não substitui, o motivo, as formatações do word fazem aparecer uma porrada de tags entre os "@" e os "NomeDaVariavel", e isso faz com que o str_replace não funcione.
Ccheguei a um regex para usar com o preg_replace que consegue limpar estas tags , mas acontece quase sempre também de ter uma bendita de uma quebra de linha, tab, espaço etc. E é aí que empaquei, sei que a quebra de linha no regex é representado por \n. mas não consegui chegar a uma regex que satisfaça.
Abaixo tem um trecho do html gerado para facilitar, ou dificultar:
CLÁUSULA TERCEIRA: a contraprestação pecuniária aos serviços educacionais que serão prestados pela CONTRATADA, estipulados na cláusula anterior, constitui-se na anuidade escolar do Ano Letivo de </span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">2014</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">, no valor total de </span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">R$ </span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">ValorTotal</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@ </span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">(</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">ValorExtenso</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">)</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">, a ser paga integralmente pelo CONTRATANTE, na seguinte forma: </span></span></p><p class="Normal-P" style="
margin-bottom:0pt;
line-height:24pt;
text-align:justify;text-justify:inter-ideograph;direction:ltr;unicode-bidi:normal;"><span class="Normal-H"><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
"></span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
"> Parágrafo Primeiro - a anuidade escolar, no valor de </span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">R$</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
"> </span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">ValorTotal</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
"> será parcelada em </span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@QtdParcelas</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
">@</span><span class="-H" style="
font-family:Book Antiqua;
font-size:12pt;
"> </span>
Coloquei em negrito algumas variáveis, quem tiver um tempinho pra dar uma olhada.
Obrigado desde já,
[]s.
Discussão (2)
Carregando comentários...