<?php

// Lê conteúdo do txt
$documento = 'TÍTULO I
Dos Princípios Fundamentais

Art. 1º A República Federativa do Brasil, formada pela união indissolúvel dos Estados e Municípios e do Distrito Federal, constitui-se em Estado Democrático de Direito e tem como fundamentos:

I - a soberania;

II - a cidadania

III - a dignidade da pessoa humana;

IV - os valores sociais do trabalho e da livre iniciativa;

V - o pluralismo político.

Parágrafo único. Todo o poder emana do povo, que o exerce por meio de representantes eleitos ou diretamente, nos termos desta Constituição.

Art. 2º São Poderes da União, independentes e harmônicos entre si, o Legislativo, o Executivo e o Judiciário.

Art. 3º Constituem objetivos fundamentais da República Federativa do Brasil:

I - construir uma sociedade livre, justa e solidária;

II - garantir o desenvolvimento nacional;

III - erradicar a pobreza e a marginalização e reduzir as desigualdades sociais e regionais;

IV - promover o bem de todos, sem preconceitos de origem, raça, sexo, cor, idade e quaisquer outras formas de discriminação.

Art. 4º A República Federativa do Brasil rege-se nas suas relações internacionais pelos seguintes princípios:

I - independência nacional;

II - prevalência dos direitos humanos;

III - autodeterminação dos povos;

IV - não-intervenção;

V - igualdade entre os Estados;

VI - defesa da paz;

VII - solução pacífica dos conflitos;

VIII - repúdio ao terrorismo e ao racismo;

IX - cooperação entre os povos para o progresso da humanidade;

X - concessão de asilo político.

Parágrafo único. A República Federativa do Brasil buscará a integração econômica, política, social e cultural dos povos da América Latina, visando à formação de uma comunidade latino-americana de nações.

TÍTULO II
Dos Direitos e Garantias Fundamentais
CAPÍTULO I
DOS DIREITOS E DEVERES INDIVIDUAIS E COLETIVOS

Art. 5º Todos são iguais perante a lei, sem distinção de qualquer natureza, garantindo-se aos brasileiros e aos estrangeiros residentes no País a inviolabilidade do direito à vida, à liberdade, à igualdade, à segurança e à propriedade, nos termos seguintes:

I - homens e mulheres são iguais em direitos e obrigações, nos termos desta Constituição;

II - ninguém será obrigado a fazer ou deixar de fazer alguma coisa senão em virtude de lei;

III - ninguém será submetido a tortura nem a tratamento desumano ou degradante;';


function romano($romano) {
    switch (trim(strip_tags($romano))){
      case 'I':
        $romano = '1';
        break;
      case 'II':
        $romano = '2';
        break;
      case 'III':
        $romano = '3';
        break;  
      case 'IV':
        $romano = '4';
        break;
      case 'V':
        $romano = '5';
        break; 
      case 'VI':
        $romano = '6';
        break; 
      case 'VII':
        $romano = '7';
        break;
      case 'VIII':
        $romano = '8';
        break;
      case 'IX':
        $romano = '9';
        break;  
      case 'X':
        $romano = '10';
        break;   
      case 'XI':
        $romano = '11';
        break; 
      case 'XII':
        $romano = '12';
        break;     
      case 'XIII':
        $romano = '13';
        break;     
      case 'XIV':
        $romano = '14';
        break;  
      case 'XV':
        $romano = '15';
        break; 
      case 'XVI':
        $romano = '16';
        break; 
      case 'XVII':
        $romano = '17';
        break;     
      case 'XVIII':
        $romano = '18';
        break;     
      case 'XIX':
        $romano = '19';
        break;  
      case 'XX':
        $romano = '20';
        break;                                                
      case 'ÚNICO':
        $romano = '_unico';
        break;  
      case 'COMPLEMENTAR':
        $romano = '_complementar';
        break;
      case 'G':
        $romano = '_geral';
        break;  
      case 'E':
        $romano = '_especial';
        break;                                                                                                                                               
     default:
        $romano = '_especial';
    }
    return $romano;
} 


function concatena($concatenaHierarquia) {

      if ($contatenaParte = 1) {
        $concatenaHierarquia .= $valorParte;
      }
      if ($contatenaLivro = 1) {
        $concatenaHierarquia .= $valorLivro;
      }
      if ($contatenaTitulo = 1) {
        $concatenaHierarquia .= $valorTitulo;
      }
      if ($contatenaSubtitulo = 1) {
        $concatenaHierarquia .= $valorSubtitulo;
      }
      if ($contatenaCapitulo = 1) {
        $concatenaHierarquia .= $valorCapitulo;
      }
      if ($contatenaSecoes = 1) {
        $concatenaHierarquia .= $valorSecao;
      }
      if ($contatenaSubsecoes = 1) {
        $concatenaHierarquia .= $valorsubsecao;
      }
      if ($contatenaArtigos = 1) {
        $concatenaHierarquia .= $valorArtigo;
      }

      return $concatenaHierarquia;
}

// Variável das palavras chaves
$encontraParte = "P A R T E";
$encontraLivro = "LIVRO";
$encontraTitulo = "TÍTULO";
$encontraSubtitulo = "SUBTÍTULO";
$encontraCapitulo = "CAPÍTULO";
$encontraSecao = "Seção";
$encontraSubsecao = "Subseção";
$encontraArtigo = "Art.";
$concatenaHierarquia = "";


$valorParte = "";
$valorLivro = "";
$valorTitulo = "";
$valorSubtitulo = "";
$valorCapitulo = "";
$valorSecao = "";
$valorsubsecao = "";
$valorArtigo = "";


$documento = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $documento);
// Converte em linhas
$linhas = explode("\n", $documento);

foreach ($linhas as $novalinha) {

    // Envolve cada linha em um parágrafo
    $novalinhas =   "<li><p>" . $novalinha . "</p></li>"; 

   // Verifica se tem o texto Linha na linha
   $procuraParte = strpos($novalinhas,$encontraParte);

   if ($procuraParte === false){
    $contatenaPars = 0;
   // Verifica se tem o texto Linha na linha
   $procuraLivro = strpos($novalinhas,$encontraLivro);

   if ($procuraLivro === false){
    $contatenaLivs = 0;
     // Verifica se tem o texto título na linha
     $procuraTitulo = strpos($novalinhas,$encontraTitulo);

     if ($procuraTitulo === false){
      $contatenaTits = 0;
       // Verifica se tem o texto Subtítulo na linha
       $procuraSubtitulo = strpos($novalinhas,$encontraSubtitulo);

       if ($procuraSubtitulo === false){
        $contatenaSubtits = 0;
          // Verifica se tem o texto capítulo na linha
          $procuraCapitulo = strpos($novalinhas,$encontraCapitulo);

          if ($procuraCapitulo === false){
          $contatenaCaps = 0;
           // Verifica se tem o texto Seção na linha
           $procuraSecao = strpos($novalinhas,$encontraSecao);
          
           if ($procuraSecao === false){
            $contatenaSecoes = 0;
              // Verifica se tem o texto Subseção na linha
              $procuraSubsecao = strpos($novalinhas,$encontraSubsecao);

              if ($procuraSubsecao === false){
              $contatenaSubsecoes = 0;
                 // Verifica se tem o texto Artigo na linha
                 $procuraArtigo = strpos($novalinhas,$encontraArtigo);

                 if ($procuraArtigo === false){
                  $contatenaArtigos = 0;
                    echo $novalinhas;      

                 } else {

                    $contatenaArtigos = 1;
                    // Captura o número do artigo para atribuir na ID                  
                    $artigo =  explode(" ", $novalinhas);

                    $caracteres = array("º",".");

                    $artigos = str_replace($caracteres, "", $artigo[1]);

                    $valorArtigo = 'artigo' . $artigos;

                    echo "</ul>";        
                    echo '<ul id="' . $valorArtigo . '" class="artigo">';                   
                    echo $novalinhas;

                    $valorArtigo = 'artigo' . $artigos;

                    echo "Concatena: " . concatena($concatenaHierarquia);                  
                 }     

              } else {

                $contatenaSubsecao = 1;
                 // Captura o número romano da Subseção para atribuir na ID
                $subsecao =  explode(" ", $novalinhas);
                $caracteres = array("Subseção");
                $subsecoes = romano($subsecao[1]);   
                
                $valorSubsecoes = 'subsecao' . $subsecoes;

                echo "</ul>";        
                echo '<ul id="' . $valorSubsecoes . '" class="subsecao">';                     
                echo $novalinhas;  

                echo "Concatena: " . concatena($concatenaHierarquia);                 
              }    

           } else {

                $contatenaSecao = 1;
                 // Captura o número romano da Subseção para atribuir na ID
                $secao =  explode(" ", $novalinhas);
                $caracteres = array("Seção");
                $secoes = romano($secao[1]);   

                $valorSecoes = 'secao' . $secoes;

                echo "</ul>";        
                echo '<ul id="' . $valorSecoes . '" class="secao">';                      
                echo $novalinhas;    

                echo "Concatena: " . concatena($concatenaHierarquia);                  
           }     

        } else {

                $contatenaCapitulo = 1;
                 // Captura o número romano da Subseção para atribuir na ID
                $cap =  explode(" ", $novalinhas);
                $caracteres = array("CAPÍTULO");
                $caps = romano($cap[1]);  

                $valorCapitulo = 'capitulo' . $caps;

                echo "</ul>";        
                echo '<ul id="' .  $valorCapitulo . '" class="capitulo">';                      
                echo $novalinhas;  

                echo "Concatena: " . concatena($concatenaHierarquia);                 
      }

     } else {

                $contatenaSubtitulo = 1;
                $subtit =  explode(" ", $novalinhas);
                $caracteres = array("SUBTÍTULO");
                $subtits = romano($subtit[1]);  

                $valorSubtitulo = 'subtitulo' . $subtits;

                echo "</ul>";        
                echo '<ul id="' . $valorSubtitulo . '" class="subtitulo">';                      
                echo $novalinhas; 

                echo "Concatena: " . concatena($concatenaHierarquia);                 
     } 

   } else {

                $contatenaTitulo = 1;
                $tit =  explode(" ", $novalinhas);
                $caracteres = array("TÍTULO");
                $tits = romano($tit[1]);  

                $valorTitulo = 'titulo' . $tits;

                echo "</ul>";        
                echo '<ul id="' . $valorTitulo  . '" class="titulo">';                      
                echo $novalinhas; 

                echo "Concatena: " . concatena($concatenaHierarquia);                            
     } 

   } else {

                $contatenaLivro = 1;
                $liv =  explode(" ", $novalinhas);
                $caracteres = array("LIVRO");
                $livs = romano($liv[1]);  

                $valorLivro = 'livro' . $livs;

                echo "</ul>";        
                echo '<ul id="' . $valorLivro . '" class="livro">';                      
                echo $novalinhas;

                echo "Concatena: " . concatena($concatenaHierarquia);  
                }
     } else {

                $contatenaParte = 1;
                $par =  explode(" ", $novalinhas);
                $caracteres = array("PARTE");
                $pars = romano($par[8]); 

                $valorParte = 'parte' . $pars;

                echo "</ul>";        
                echo '<ul id="' . $valorParte. '" class="parte">';                      
                echo $novalinhas;   

                echo "Concatena: " . concatena($concatenaHierarquia);                                           
     }

}

?>