Bonjour,

Je viens de passer un temps assez conséquent en voulant utiliser un regexp pour m'aider à nettoyer une requête SQL.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT
*
FROM
`tralala`
WHERE
`toto`  = 'bam bi  nou'   AND `tata` =  truc
Comme vous l'aurez constaté, il y a des espaces en trop.
Oui mais attention, ceux de la chaine "bam_bi__nou", ne doivent pas être traités. Consistance oblige.

Donc la règle est : remplacer tout les espaces de plus de 2 caractères consécutifs par un seul à l'exception de ceux se situant entre quotes.

Si il y a des ténors du REGEXP, merci d'avance pour votre regard affuté. Sinon, je m'en retournerais vers une bonne vieille itération des familles.