Petit défit d'expressions régulières

Eléphant du PHP | 79 Messages

11 déc. 2012, 07:42

Salut,

Pour l'exportation en sql, j'aurais besoin de transformer une base de ce type :
abaissable|1
(Adjectif)|abattable|inclinable
En ce format :
INSERT INTO `dico` VALUES ('abaissable','abattable,inclinable');
mais ça me semble compliqué
Mon site dédié à Minecraft : http://www.orminecraft.com
Et celui dédié à ses serveurs multijoueur ;) http://www.serveurs-minecraft.net

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

11 déc. 2012, 23:56

salut,


il y a d'autre ligne dans ton fichier ?

parce que la c'est simple
- explode sur le saut de ligne
- sur la première partie : explode sur le tube (pipe => | ) l'index zéro est le premier mot
- sur la seconde partie odem sauf que index 1 et 2 te serviront.

si tu a plus de lignes il faut voir d'où elles viennent et les traiter deux par deux.

tu peux aussi utiliser une expression régulière, le masque peux être de se style : (\w|\w)\r(\w|\w|\w) (en gros c'est ça, a toi de compléter pour la suite) tu peux t'aider de testeur d'expression régulière en ligne ;)

Attention a subtilité du saut de ligne (\r, \n ou \r\n suivant l'os) et du fait que le tube est un caractère spécial dans les expressions régulières)

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 79 Messages

14 déc. 2012, 05:13

Ok merci, c'est quasi bon mais il me reste un truc tout bête imprévu :mrgreen:

Comment supprimer tous les caractères entre
'),
et le prochain
('
Mon site dédié à Minecraft : http://www.orminecraft.com
Et celui dédié à ses serveurs multijoueur ;) http://www.serveurs-minecraft.net