Capture et remplacement d'une chaine à l'aide de RegExp dans
Posté : 03 janv. 2009, 23:08
Bonsoir,
j'ai dans une base de donnée (MySQL) du texte (provenant d'un wiki).
Pour chaque page du wiki le texte est stocké dans un enregistrement de la
table "wikka_pages" au niveau du champ "body"
J'ai fait un essai en PHP pour une page avec la regexp suivante
et convient (pour transformer en
mais comme dis plus haut je voudrais faire ça pour toutes les pages.
Est-ce possible directement en SQL ? avec une syntaxe qui ressemblerait à
Si ça ne peut pas se faire ainsi comment procériez-vous ?
(je ne connais pas les procédures stockées mais ça peut servir, non ?)
Merci d'avance
j'ai dans une base de donnée (MySQL) du texte (provenant d'un wiki).
Pour chaque page du wiki le texte est stocké dans un enregistrement de la
table "wikka_pages" au niveau du champ "body"
J'ai fait un essai en PHP pour une page avec la regexp suivante
Code : Tout sélectionner
preg_replace('/\[{2}([a-z0-9]+:\/\/[^ \t\n\r\f"\|\\\\\^\`\{\}\[\]><]+\.(gif|png|jpg|jpeg)) (.*)\]{2}/', '{{image url="$1" title="$2" alt="$2"}}', $string_from);Code : Tout sélectionner
[[http://www.monsite.com/image.png image]]Code : Tout sélectionner
{{image url="http://www.monsite.com/image.png" title="image" alt="image"}}Est-ce possible directement en SQL ? avec une syntaxe qui ressemblerait à
Code : Tout sélectionner
UPDATE wikka_pages SET body=preg_replace('/\[{2}([a-z0-9]+:\/\/[^ \t\n\r\f"\|\\\\\^\`\{\}\[\]><]+\.(gif|png|jpg|jpeg)) (.*)\]{2}/', '{{image url="$1" title="$2" alt="$2"}}', body)(je ne connais pas les procédures stockées mais ça peut servir, non ?)
Merci d'avance