par
Berzemus » 05 juil. 2012, 12:00
Parce qu'alors, un simple preg_split() avec une expression régulière du genre "#;$#" suffirait, non ?
Non car il ne faut pas traiter les ";" à l'intérieur de de champ de texte (entre apostrophes).
Si chaque point-virgule final était suivi d'un retour à la ligne, cela aurait fonctionné à merveille car l'expression régulière précisée ne s'applique qu'aux point-virgules en
fin de ligne (cf. le signe $). Mais comme c'est pas le cas, ce n'est pas utile.
Une autre manière aurait été de traverser le texte caractère par caractère ...
Oui, ça je sais faire, mais c'est un peu "agricole". Je cherchais une manière élégante tout en apprenant un peu
à manipuler "preg". C'est raté.
A+
Jacky
Le fait est qu'il faut une vraie structure pour utiliser efficacement les expressions régulières. Et comme ici, si je peux me permettre, c'est un peu le bordel avec des point-virgules partout à l'intérieur des lignes et non-échappées dans les requêtes, c'est un peu plus complexe. Il serait intéressant de savoir ce qui génère ton script SQL, surtout si une importation directe par mysql (genre
mysql banque_de_donnees < fichier_texte) ne fonctionne pas.
[quote="JABch"][quote="Berzemus"]Parce qu'alors, un simple preg_split() avec une expression régulière du genre "#;$#" suffirait, non ?[/quote]
Non car il ne faut pas traiter les ";" à l'intérieur de de champ de texte (entre apostrophes).[/quote]
Si chaque point-virgule final était suivi d'un retour à la ligne, cela aurait fonctionné à merveille car l'expression régulière précisée ne s'applique qu'aux point-virgules en[b] fin de ligne[/b] (cf. le signe $). Mais comme c'est pas le cas, ce n'est pas utile.
[quote][quote="Berzemus"]Une autre manière aurait été de traverser le texte caractère par caractère ...[/quote]
Oui, ça je sais faire, mais c'est un peu "agricole". Je cherchais une manière élégante tout en apprenant un peu
à manipuler "preg". C'est raté.
A+
Jacky[/quote]
Le fait est qu'il faut une vraie structure pour utiliser efficacement les expressions régulières. Et comme ici, si je peux me permettre, c'est un peu le bordel avec des point-virgules partout à l'intérieur des lignes et non-échappées dans les requêtes, c'est un peu plus complexe. Il serait intéressant de savoir ce qui génère ton script SQL, surtout si une importation directe par mysql (genre [i]mysql banque_de_donnees < fichier_texte[/i]) ne fonctionne pas.