Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala pessoal
Estou fazendo a conversão da biblia de txt para um banco mysql. O arquivo que tenho que fazer a conversão esta no seguinte formato:
>
Capitulo 1
1 No princípio criou Deus os céus e a terra.
2 E a terra era sem forma e vazia; e havia trevas sobre a face do abismo; e o Espírito de Deus se movia sobre a face das águas.
Preciso dividi-los nas seguintes posições para transferi-los para o mysql
>
[0]Capitulo [1] 1 [2] 1 [3] No princípio criou Deus os céus e a terra.
[0]Capitulo [1] 1 [2] 2 [3] E a terra era sem forma e vazia; e havia trevas sobre a face do abismo; e o Espírito de Deus se movia sobre a face das águas.
O Script que gerei esta me retornando os seguintes resultados:
[0]Capitulo [1] 1 [2] 1 No princípio criou Deus os céus e a terra [3]
To pagando um pau aqui pras expressoes regulares, alguem ai pode me dar um help ??
Segue abaixo o script
<pre>
<?php
$abrir = fopen("./arquivos/genesis_01.txt",'r');
$mdopen = '';
# le o conteudo do arquivo
while(!feof($abrir)):
flush();
$mdopen .= fgets($abrir);
endwhile;
fclose($abrir);
# quebra a string no final das linhas
$l = explode("\n",$mdopen);
for ($a = 0; $a < count($l); $a++):
$subject = $l[$a];
$pattern = '/^Capitulo/';
if (preg_match("/Capitulo/", $subject)):
$str = $l[$a];
preg_match('/(?<Capitulo>\w+) (?<numero>\d+)/', $str, $m);
#print_r($m);
else:
$str = $l[$a];
if(preg_match("/^([0-9]\d+)?.*([^0-9]+)/",$str,$b) ):
#print_r($b);
endif;
endif;
if(isset($b[1])):
# print "Capitulo: {$m[1]} {$m[2]}, Versiculo {$b[1]}: {$b[0]} <br />";
print "{$m[1]}: {$m[2]}, Versiculo {$b[1]}: ".trim($b[0])." \n";
endif;
endfor;
?>Carregando comentários...