test-find-lua.nut 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. auto str = [==[
  2. <txNomeParlamentar>ABEL MESQUITA JR.</txNomeParlamentar>
  3. <ideCadastro>178957</ideCadastro>
  4. <nuCarteiraParlamentar>1</nuCarteiraParlamentar>
  5. <nuLegislatura>2015</nuLegislatura>
  6. <sgUF>RR</sgUF>
  7. <sgPartido>DEM</sgPartido>
  8. <codLegislatura>55</codLegislatura>
  9. <numSubCota>10</numSubCota>
  10. <txtDescricao>TELEFONIA</txtDescricao>
  11. <numEspecificacaoSubCota>0</numEspecificacaoSubCota>
  12. <txtDescricaoEspecificacao/>
  13. <txtFornecedor>CELULAR FUNCIONAL</txtFornecedor>
  14. <txtCNPJCPF/>
  15. <txtNumero/>
  16. <indTipoDocumento>0</indTipoDocumento>
  17. <datEmissao>2016-01-12T00:00:00</datEmissao>
  18. <vlrDocumento>120.48</vlrDocumento>
  19. <vlrGlosa>0</vlrGlosa>
  20. <vlrLiquido>120.48</vlrLiquido>
  21. <numMes>1</numMes>
  22. <numAno>2016</numAno>
  23. <numParcela>0</numParcela>
  24. <txtPassageiro/>
  25. <txtTrecho/>
  26. <numLote>0</numLote>
  27. <numRessarcimento>0</numRessarcimento>
  28. <nuDeputadoId>3074</nuDeputadoId>
  29. <ideDocumento/>
  30. ]==];
  31. auto result_array = [];
  32. auto start_pos = 0;
  33. //auto find_re = "(<[^>]+>)";
  34. //auto find_re = "(<[^>]+>)([^<]*)(</[^>]+>)";
  35. //auto find_re = "<[^>]+>()([^<]*)()</[^>]+>";
  36. auto find_re = "<[^>]+>([^<]*)</[^>]+>";
  37. while(str.find_lua(find_re, result_array, start_pos) >= 0)
  38. {
  39. print(result_array.join("\t"));
  40. start_pos = result_array[1]+1;
  41. }