Bonjour à tous.
Je voudrais lire des chaines longues comme cela:
Je voudrais donc séparer les chiffres et le texte pour associer dans un array le nombre de gauche au texte complet de droite jusqu'au nombre suivant pour après insérer ces valeurs dans une base de données.1 Cuando a los pocos días volvió Jesús a Cafarnaún, se supo que estaba en casa*. 2 Acudieron tantos que no quedaba sitio ni a la puerta. Y les proponía la palabra. 3 Y vinieron trayéndole un paralítico llevado entre cuatro 4 y, como no podían presentárselo por el gentío, levantaron la techumbre encima de donde él estaba, abrieron un boquete y descolgaron la camilla donde yacía el paralítico. 5 Viendo Jesús la fe que tenían, le dice al paralítico: «Hijo, tus pecados te son perdonados». 6 Unos escribas, que estaban allí sentados, pensaban para sus adentros: 7 «¿Por qué habla este así? Blasfema. ¿Quién puede perdonar pecados, sino solo uno, Dios?». 8 Jesús se dio cuenta enseguida de lo que pensaban y les dijo: «¿Por qué pensáis eso? 9 ¿Qué es más fácil, decir al paralítico: “Tus pecados te son perdonados”, o decir: “Levántate, coge la camilla y echa a andar”? 10 Pues, para que veáis que el Hijo del hombre tiene autoridad en la tierra para perdonar pecados —dice al paralítico—: 11 “Te digo: levántate, coge tu camilla y vete a tu casa”». 12 Se levantó, cogió inmediatamente la camilla y salió a la vista de todos. Se quedaron atónitos y daban gloria a Dios, diciendo: «Nunca hemos visto una cosa igual».
J'ai réussi faire cela:
Ca marche parfaitement lorsque les chiffres de gauche commencent par 1 et s'augmentent par 1 à chaque fois, mais je voudrais que la variable $key prenne à chaque fois le nombre qui rencontrerait a gauche car ce n'est pas toujours que ma chaine a du texte commençant par un.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 $matches = preg_split('/[0-9]+/', $chaine_longue); $sql = array(); foreach($matches as $key => $value){ $$key = $value; $value=nl2br2($value); $value=trim($value); if ($key==0){ } else { $key = (int)$key; $sql[] = '('.$libro.', '.$capitulo.','.$key.',"'.$value.'")'; print_r($key.' '.$value); } } $mysql_query='INSERT INTO tblBibliaCEE (libro,capitulo, versiculo, texto) VALUES '.implode(',', $sql);
Merci d'avance si quelqu'un peut me donner des idées.
Partager