[Python] Trouver un mot dans une chaîne

Fermé
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 6 sept. 2004 à 19:12
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 7 sept. 2004 à 18:54
Bonjour,

Alors voilà, mon problème c'est que je voudrais écrire un script permettant de découper les fichiers sql en plusieurs parties s'ils sont trop gros pour être pris en charge par PhpMyAdmin.

J'aimerais, pour ça, savoir detecter la présence d'un mot dans une chaine de caractère (pour mon cas, detecter la présence de "CREATE")...

J'ai regardé dans le module string:
http://www.python.org/doc/current/lib/module-string.html

Mais là mon anglais n'est pas folichon :-(
Peut être avec la methode find () ou rfind () mais je ne comprend pas comment on les utilise....

Donc si quelqu'un sait, merci d'avance :-)

Kilian, débutant en tâche de fond.....

9 réponses

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
7 sept. 2004 à 10:12
ok... donc si j'ai bien compris ton problème:
Tu as un gros script SQL, et tu veux le découper en petits scripts individuels (chaque script commençant par "CREATE..."), c'est ça ?

Si la variable grosscript contient ton script SQL, je te propose ça:

separateur = '\nCREATE '
for petitscript in grosscript.split(separateur):
    if len(petitscript.strip()) > 0:
        petitscript = separateur + petitscript
        print petitscript
        print '---------------------'


Après, à toi de mettre ce que tu veux à la place des print. :-)
0