fork download
  1. <?php
  2.  
  3. // Lê conteúdo do txt
  4. $documento = 'TÍTULO I
  5. Dos Princípios Fundamentais
  6.  
  7. 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:
  8.  
  9. I - a soberania;
  10.  
  11. II - a cidadania
  12.  
  13. III - a dignidade da pessoa humana;
  14.  
  15. IV - os valores sociais do trabalho e da livre iniciativa;
  16.  
  17. V - o pluralismo político.
  18.  
  19. Parágrafo único. Todo o poder emana do povo, que o exerce por meio de representantes eleitos ou diretamente, nos termos desta Constituição.
  20.  
  21. Art. 2º São Poderes da União, independentes e harmônicos entre si, o Legislativo, o Executivo e o Judiciário.
  22.  
  23. Art. 3º Constituem objetivos fundamentais da República Federativa do Brasil:
  24.  
  25. I - construir uma sociedade livre, justa e solidária;
  26.  
  27. II - garantir o desenvolvimento nacional;
  28.  
  29. III - erradicar a pobreza e a marginalização e reduzir as desigualdades sociais e regionais;
  30.  
  31. IV - promover o bem de todos, sem preconceitos de origem, raça, sexo, cor, idade e quaisquer outras formas de discriminação.
  32.  
  33. Art. 4º A República Federativa do Brasil rege-se nas suas relações internacionais pelos seguintes princípios:
  34.  
  35. I - independência nacional;
  36.  
  37. II - prevalência dos direitos humanos;
  38.  
  39. III - autodeterminação dos povos;
  40.  
  41. IV - não-intervenção;
  42.  
  43. V - igualdade entre os Estados;
  44.  
  45. VI - defesa da paz;
  46.  
  47. VII - solução pacífica dos conflitos;
  48.  
  49. VIII - repúdio ao terrorismo e ao racismo;
  50.  
  51. IX - cooperação entre os povos para o progresso da humanidade;
  52.  
  53. X - concessão de asilo político.
  54.  
  55. 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.
  56.  
  57. TÍTULO II
  58. Dos Direitos e Garantias Fundamentais
  59. CAPÍTULO I
  60. DOS DIREITOS E DEVERES INDIVIDUAIS E COLETIVOS
  61.  
  62. 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:
  63.  
  64. I - homens e mulheres são iguais em direitos e obrigações, nos termos desta Constituição;
  65.  
  66. II - ninguém será obrigado a fazer ou deixar de fazer alguma coisa senão em virtude de lei;
  67.  
  68. III - ninguém será submetido a tortura nem a tratamento desumano ou degradante;';
  69.  
  70.  
  71. function romano($romano) {
  72. switch (trim(strip_tags($romano))){
  73. case 'I':
  74. $romano = '1';
  75. break;
  76. case 'II':
  77. $romano = '2';
  78. break;
  79. case 'III':
  80. $romano = '3';
  81. break;
  82. case 'IV':
  83. $romano = '4';
  84. break;
  85. case 'V':
  86. $romano = '5';
  87. break;
  88. case 'VI':
  89. $romano = '6';
  90. break;
  91. case 'VII':
  92. $romano = '7';
  93. break;
  94. case 'VIII':
  95. $romano = '8';
  96. break;
  97. case 'IX':
  98. $romano = '9';
  99. break;
  100. case 'X':
  101. $romano = '10';
  102. break;
  103. case 'XI':
  104. $romano = '11';
  105. break;
  106. case 'XII':
  107. $romano = '12';
  108. break;
  109. case 'XIII':
  110. $romano = '13';
  111. break;
  112. case 'XIV':
  113. $romano = '14';
  114. break;
  115. case 'XV':
  116. $romano = '15';
  117. break;
  118. case 'XVI':
  119. $romano = '16';
  120. break;
  121. case 'XVII':
  122. $romano = '17';
  123. break;
  124. case 'XVIII':
  125. $romano = '18';
  126. break;
  127. case 'XIX':
  128. $romano = '19';
  129. break;
  130. case 'XX':
  131. $romano = '20';
  132. break;
  133. case 'ÚNICO':
  134. $romano = '_unico';
  135. break;
  136. case 'COMPLEMENTAR':
  137. $romano = '_complementar';
  138. break;
  139. case 'G':
  140. $romano = '_geral';
  141. break;
  142. case 'E':
  143. $romano = '_especial';
  144. break;
  145. default:
  146. $romano = '_especial';
  147. }
  148. return $romano;
  149. }
  150.  
  151.  
  152. $concatena = function ($concatenaHierarquia) use ($valorParte, $valorLivro, $valorTitulo,
  153. $valorSubtitulo, $valorCapitulo, $valorSecao,
  154. $valorSubsecao, $valorArtigo) {
  155.  
  156. if ($contatenaParte = 1) {
  157. $concatenaHierarquia .= $valorParte;
  158. }
  159. if ($contatenaLivro = 1) {
  160. $concatenaHierarquia .= $valorLivro;
  161. }
  162. if ($contatenaTitulo = 1) {
  163. $concatenaHierarquia .= $valorTitulo;
  164. }
  165. if ($contatenaSubtitulo = 1) {
  166. $concatenaHierarquia .= $valorSubtitulo;
  167. }
  168. if ($contatenaCapitulo = 1) {
  169. $concatenaHierarquia .= $valorCapitulo;
  170. }
  171. if ($contatenaSecoes = 1) {
  172. $concatenaHierarquia .= $valorSecao;
  173. }
  174. if ($contatenaSubsecoes = 1) {
  175. $concatenaHierarquia .= $valorsubsecao;
  176. }
  177. if ($contatenaArtigos = 1) {
  178. $concatenaHierarquia .= $valorArtigo;
  179. }
  180.  
  181. return $concatenaHierarquia;
  182. };
  183.  
  184. // Variável das palavras chaves
  185. $encontraParte = "P A R T E";
  186. $encontraLivro = "LIVRO";
  187. $encontraTitulo = "TÍTULO";
  188. $encontraSubtitulo = "SUBTÍTULO";
  189. $encontraCapitulo = "CAPÍTULO";
  190. $encontraSecao = "Seção";
  191. $encontraSubsecao = "Subseção";
  192. $encontraArtigo = "Art.";
  193. $concatenaHierarquia = "";
  194.  
  195.  
  196. $valorParte = "";
  197. $valorLivro = "";
  198. $valorTitulo = "";
  199. $valorSubtitulo = "";
  200. $valorCapitulo = "";
  201. $valorSecao = "";
  202. $valorsubsecao = "";
  203. $valorArtigo = "";
  204.  
  205.  
  206. $documento = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $documento);
  207. // Converte em linhas
  208. $linhas = explode("\n", $documento);
  209.  
  210. foreach ($linhas as $novalinha) {
  211.  
  212. // Envolve cada linha em um parágrafo
  213. $novalinhas = "<li><p>" . $novalinha . "</p></li>";
  214.  
  215. // Verifica se tem o texto Linha na linha
  216. $procuraParte = strpos($novalinhas,$encontraParte);
  217.  
  218. if ($procuraParte === false){
  219. $contatenaPars = 0;
  220. // Verifica se tem o texto Linha na linha
  221. $procuraLivro = strpos($novalinhas,$encontraLivro);
  222.  
  223. if ($procuraLivro === false){
  224. $contatenaLivs = 0;
  225. // Verifica se tem o texto título na linha
  226. $procuraTitulo = strpos($novalinhas,$encontraTitulo);
  227.  
  228. if ($procuraTitulo === false){
  229. $contatenaTits = 0;
  230. // Verifica se tem o texto Subtítulo na linha
  231. $procuraSubtitulo = strpos($novalinhas,$encontraSubtitulo);
  232.  
  233. if ($procuraSubtitulo === false){
  234. $contatenaSubtits = 0;
  235. // Verifica se tem o texto capítulo na linha
  236. $procuraCapitulo = strpos($novalinhas,$encontraCapitulo);
  237.  
  238. if ($procuraCapitulo === false){
  239. $contatenaCaps = 0;
  240. // Verifica se tem o texto Seção na linha
  241. $procuraSecao = strpos($novalinhas,$encontraSecao);
  242.  
  243. if ($procuraSecao === false){
  244. $contatenaSecoes = 0;
  245. // Verifica se tem o texto Subseção na linha
  246. $procuraSubsecao = strpos($novalinhas,$encontraSubsecao);
  247.  
  248. if ($procuraSubsecao === false){
  249. $contatenaSubsecoes = 0;
  250. // Verifica se tem o texto Artigo na linha
  251. $procuraArtigo = strpos($novalinhas,$encontraArtigo);
  252.  
  253. if ($procuraArtigo === false){
  254. $contatenaArtigos = 0;
  255. echo $novalinhas;
  256.  
  257. } else {
  258.  
  259. $contatenaArtigos = 1;
  260. // Captura o número do artigo para atribuir na ID
  261. $artigo = explode(" ", $novalinhas);
  262.  
  263. $caracteres = array("º",".");
  264.  
  265. $artigos = str_replace($caracteres, "", $artigo[1]);
  266.  
  267. $valorArtigo = 'artigo' . $artigos;
  268.  
  269. echo "</ul>";
  270. echo '<ul id="' . $valorArtigo . '" class="artigo">';
  271. echo $novalinhas;
  272.  
  273. $valorArtigo = 'artigo' . $artigos;
  274.  
  275. echo "Concatena: " . $concatena($concatenaHierarquia);
  276. }
  277.  
  278. } else {
  279.  
  280. $contatenaSubsecao = 1;
  281. // Captura o número romano da Subseção para atribuir na ID
  282. $subsecao = explode(" ", $novalinhas);
  283. $caracteres = array("Subseção");
  284. $subsecoes = romano($subsecao[1]);
  285.  
  286. $valorSubsecoes = 'subsecao' . $subsecoes;
  287.  
  288. echo "</ul>";
  289. echo '<ul id="' . $valorSubsecoes . '" class="subsecao">';
  290. echo $novalinhas;
  291.  
  292. echo "Concatena: " . $concatena($concatenaHierarquia);
  293. }
  294.  
  295. } else {
  296.  
  297. $contatenaSecao = 1;
  298. // Captura o número romano da Subseção para atribuir na ID
  299. $secao = explode(" ", $novalinhas);
  300. $caracteres = array("Seção");
  301. $secoes = romano($secao[1]);
  302.  
  303. $valorSecoes = 'secao' . $secoes;
  304.  
  305. echo "</ul>";
  306. echo '<ul id="' . $valorSecoes . '" class="secao">';
  307. echo $novalinhas;
  308.  
  309. echo "Concatena: " . $concatena($concatenaHierarquia);
  310. }
  311.  
  312. } else {
  313.  
  314. $contatenaCapitulo = 1;
  315. // Captura o número romano da Subseção para atribuir na ID
  316. $cap = explode(" ", $novalinhas);
  317. $caracteres = array("CAPÍTULO");
  318. $caps = romano($cap[1]);
  319.  
  320. $valorCapitulo = 'capitulo' . $caps;
  321.  
  322. echo "</ul>";
  323. echo '<ul id="' . $valorCapitulo . '" class="capitulo">';
  324. echo $novalinhas;
  325.  
  326. echo "Concatena: " . $concatena($concatenaHierarquia);
  327. }
  328.  
  329. } else {
  330.  
  331. $contatenaSubtitulo = 1;
  332. $subtit = explode(" ", $novalinhas);
  333. $caracteres = array("SUBTÍTULO");
  334. $subtits = romano($subtit[1]);
  335.  
  336. $valorSubtitulo = 'subtitulo' . $subtits;
  337.  
  338. echo "</ul>";
  339. echo '<ul id="' . $valorSubtitulo . '" class="subtitulo">';
  340. echo $novalinhas;
  341.  
  342. echo "Concatena: " . $concatena($concatenaHierarquia);
  343. }
  344.  
  345. } else {
  346.  
  347. $contatenaTitulo = 1;
  348. $tit = explode(" ", $novalinhas);
  349. $caracteres = array("TÍTULO");
  350. $tits = romano($tit[1]);
  351.  
  352. $valorTitulo = 'titulo' . $tits;
  353.  
  354. echo "</ul>";
  355. echo '<ul id="' . $valorTitulo . '" class="titulo">';
  356. echo $novalinhas;
  357.  
  358. echo "Concatena: " . $concatena($concatenaHierarquia);
  359. }
  360.  
  361. } else {
  362.  
  363. $contatenaLivro = 1;
  364. $liv = explode(" ", $novalinhas);
  365. $caracteres = array("LIVRO");
  366. $livs = romano($liv[1]);
  367.  
  368. $valorLivro = 'livro' . $livs;
  369.  
  370. echo "</ul>";
  371. echo '<ul id="' . $valorLivro . '" class="livro">';
  372. echo $novalinhas;
  373.  
  374. echo "Concatena: " . $concatena($concatenaHierarquia);
  375. }
  376. } else {
  377.  
  378. $contatenaParte = 1;
  379. $par = explode(" ", $novalinhas);
  380. $caracteres = array("PARTE");
  381. $pars = romano($par[8]);
  382.  
  383. $valorParte = 'parte' . $pars;
  384.  
  385. echo "</ul>";
  386. echo '<ul id="' . $valorParte. '" class="parte">';
  387. echo $novalinhas;
  388.  
  389. echo "Concatena: " . $concatena($concatenaHierarquia);
  390. }
  391.  
  392. }
  393.  
  394. ?>
Success #stdin #stdout #stderr 0.02s 24448KB
stdin
Standard input is empty
stdout
</ul><ul id="titulo1" class="titulo"><li><p>TÍTULO I</p></li>Concatena: <li><p>Dos Princípios Fundamentais</p></li></ul><ul id="artigo1" class="artigo"><li><p>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:</p></li>Concatena: <li><p>I - a soberania;</p></li><li><p>II - a cidadania</p></li><li><p>III - a dignidade da pessoa humana;</p></li><li><p>IV - os valores sociais do trabalho e da livre iniciativa;</p></li><li><p>V - o pluralismo político.</p></li><li><p>Parágrafo único. Todo o poder emana do povo, que o exerce por meio de representantes eleitos ou diretamente, nos termos desta Constituição.</p></li></ul><ul id="artigo2" class="artigo"><li><p>Art. 2º São Poderes da União, independentes e harmônicos entre si, o Legislativo, o Executivo e o Judiciário.</p></li>Concatena: </ul><ul id="artigo3" class="artigo"><li><p>Art. 3º Constituem objetivos fundamentais da República Federativa do Brasil:</p></li>Concatena: <li><p>I - construir uma sociedade livre, justa e solidária;</p></li><li><p>II - garantir o desenvolvimento nacional;</p></li><li><p>III - erradicar a pobreza e a marginalização e reduzir as desigualdades sociais e regionais;</p></li><li><p>IV - promover o bem de todos, sem preconceitos de origem, raça, sexo, cor, idade e quaisquer outras formas de discriminação.</p></li></ul><ul id="artigo4" class="artigo"><li><p>Art. 4º A República Federativa do Brasil rege-se nas suas relações internacionais pelos seguintes princípios:</p></li>Concatena: <li><p>I - independência nacional;</p></li><li><p>II - prevalência dos direitos humanos;</p></li><li><p>III - autodeterminação dos povos;</p></li><li><p>IV - não-intervenção;</p></li><li><p>V - igualdade entre os Estados;</p></li><li><p>VI - defesa da paz;</p></li><li><p>VII - solução pacífica dos conflitos;</p></li><li><p>VIII - repúdio ao terrorismo e ao racismo;</p></li><li><p>IX - cooperação entre os povos para o progresso da humanidade;</p></li><li><p>X - concessão de asilo político.</p></li><li><p>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.</p></li></ul><ul id="titulo2" class="titulo"><li><p>TÍTULO II</p></li>Concatena: <li><p>Dos Direitos e Garantias Fundamentais</p></li></ul><ul id="capitulo1" class="capitulo"><li><p>CAPÍTULO I</p></li>Concatena: <li><p>DOS DIREITOS E DEVERES INDIVIDUAIS E COLETIVOS</p></li></ul><ul id="artigo5" class="artigo"><li><p>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:</p></li>Concatena: <li><p>I - homens e mulheres são iguais em direitos e obrigações, nos termos desta Constituição;</p></li><li><p>II - ninguém será obrigado a fazer ou deixar de fazer alguma coisa senão em virtude de lei;</p></li><li><p>III - ninguém será submetido a tortura nem a tratamento desumano ou degradante;</p></li>
stderr
PHP Notice:  Undefined variable: valorParte in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorLivro in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorTitulo in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorSubtitulo in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorCapitulo in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorSecao in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorSubsecao in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorArtigo in /home/dW869P/prog.php on line 152
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175
PHP Notice:  Undefined variable: valorsubsecao in /home/dW869P/prog.php on line 175